Repository: qdrant/qdrant
File: tests/e2e_tests/test_data_compatibility.py (Python)

Code before:
import uuid

import pytest
import requests
from pathlib import Path

from e2e_tests.conftest import QdrantContainerConfig
from e2e_tests.client_utils import ClientUtils
from e2e_tests.utils import extract_archive


class TestStorageCompatibility:
    """Test storage and snapshot compatibility with defined previous Qdrant versions."""
    
    PREV_PATCH_VERSION = "v1.14.0"
    PREV_MINOR_VERSION = "v1.15.4"
    
    EXPECTED_COLLECTIONS = [
        "test_collection_vector_memory",
        "test_collection_vector_on_disk", 
        "test_collection_vector_on_disk_threshold",
        "test_collection_scalar_int8",
        "test_collection_product_x64",
        "test_collection_product_x32", 
        "test_collection_product_x16",
        "test_collection_product_x8",
        "test_collection_binary",
        "test_collection_mmap_field_index",
        "test_collection_vector_datatype_u8",
        "test_collection_vector_datatype_f16"
    ]
    
    @staticmethod
    def _download_compatibility_data(version: str, storage_test_dir: Path):
        """Download compatibility data for a specific version."""
        # Use test-specific filename to avoid conflicts in parallel execution
        test_id = str(uuid.uuid4())[:8]
        compatibility_file = storage_test_dir / f"compatibility_{version}_{test_id}.tar"
        
        url = f"https://storage.googleapis.com/qdrant-backward-compatibility/compatibility-{version}.tar"
        

Review comment (bug):
I believe the patch and minor versions are accidentally flipped here.

---

Also, we need v1.14.0 for the time being, due to a bug in v1.14.1.

See [this](https://github.com/qdrant/qdrant/pull/7321/files):

```bash
PREV_PATCH_QDRANT_VERSION='v1.15.4'
PREV_MINOR_QDRANT_VERSION='v1.14.0' # skipping v1.14.1 as it contains a known data corruption (https://github.com/qdrant/qdrant/pull/6916)
```

Could you also add the same comment there, so that we're are we should pick the latest patch version again next time we update this?

Code after:
import uuid

import pytest
import requests
from pathlib import Path

from e2e_tests.conftest import QdrantContainerConfig
from e2e_tests.client_utils import ClientUtils
from e2e_tests.utils import extract_archive


class TestStorageCompatibility:
    """Test storage and snapshot compatibility with defined previous Qdrant versions."""
    
    PREV_PATCH_VERSION = "v1.15.4"
    PREV_MINOR_VERSION = "v1.14.0"  # skipping v1.14.1 as it contains a known data corruption (https://github.com/qdrant/qdrant/pull/6916)
    
    EXPECTED_COLLECTIONS = [
        "test_collection_vector_memory",
        "test_collection_vector_on_disk", 
        "test_collection_vector_on_disk_threshold",
        "test_collection_scalar_int8",
        "test_collection_product_x64",
        "test_collection_product_x32", 
        "test_collection_product_x16",
        "test_collection_product_x8",
        "test_collection_binary",
        "test_collection_mmap_field_index",
        "test_collection_vector_datatype_u8",
        "test_collection_vector_datatype_f16"
    ]
    
    @staticmethod
    def _download_compatibility_data(version: str, storage_test_dir: Path):
        """Download compatibility data for a specific version."""
        # Use test-specific filename to avoid conflicts in parallel execution
        test_id = str(uuid.uuid4())[:8]
        compatibility_file = storage_test_dir / f"compatibility_{version}_{test_id}.tar"
        
        url = f"https://storage.googleapis.com/qdrant-backward-compatibility/compatibility-{version}.tar"