Closed
Description
Running the CAT tests locally on:
- Oracle Linux 9.5
- Oracle Linux 8.7
- Fedora Workstation 41
Observations
- Running the CDK acceptance tests locally with:
cd airbyte/airbyte-integrations/bases/connector-acceptance-test
poetry run pytest -p connector_acceptance_test.plugin --acceptance-test-config=../../connectors/source-shopify --timeout=300
fails with the container (Docker image: registry.dagger.io/engine v0.15.1) errors:
# expect more open files due to per-client SQLite databases
# many systems default to 1024 which is far too low
ulimit -n 1048576 || echo "cannot increase open FDs with ulimit, ignoring"
... ... ...
buildkitd: failed to create engine: failed to create network providers: CNI setup error: plugin type="bridge" failed (add): failed to list chains: running [/usr/sbin/iptables -t nat -S --wait]: exit status 3: iptables v1.8.10 (legacy): can't initialize iptables table `nat': Table does not exist (do you need to insmod?)
iptables v1.8.10 (legacy): can't initialize iptables table `filter': Table does not exist (do you need to insmod?)
Perhaps iptables or your kernel needs to be upgraded.
-
Namely:
- The internally executed
/usr/sbin/iptables -t nat -S --wait
command fails with exit code 3 which does not allow the container to initialize and terminates it. man iptables
states: "Errors which indicate an incompatibility between kernel and user space cause an exit code of 3".ulimit -n 1048576
used to fail when used podman instead of docker.
- The internally executed
-
The same failure seems to happen in the pipelines of the Pull requests. Examples:
-
The logs report the same:
...
=========================== short test summary info ============================
SKIPPED [1] ../app/connector_acceptance_test/plugin.py:65: Skipping TestConnectorAttributes.test_streams_define_primary_key: not found in the config.
SKIPPED [1] ../app/connector_acceptance_test/plugin.py:65: Skipping TestConnectorDocumentation.test_prerequisites_content: not found in the config.
SKIPPED [1] ../app/connector_acceptance_test/tests/test_core.py:142: Config is not provided
SKIPPED [1] ../app/connector_acceptance_test/tests/test_core.py:121: The previous and actual specifications are identical.
SKIPPED [1] ../app/connector_acceptance_test/tests/test_core.py:803: This tests currently leads to too much failures. We need to fix the connectors at scale first.
SKIPPED [2] ../app/connector_acceptance_test/tests/test_core.py:1269: Skipping the test for supported file types as it is only applicable for certified file-based connectors.
ERROR test_core.py::TestDiscovery::test_streams_have_valid_json_schemas[inputs0]
ERROR test_core.py::TestDiscovery::test_defined_cursors_exist_in_schema[inputs0]
ERROR test_core.py::TestDiscovery::test_defined_refs_exist_in_schema[inputs0]
ERROR test_core.py::TestDiscovery::test_defined_keyword_exist_in_schema[inputs0-allOf]
ERROR test_core.py::TestDiscovery::test_defined_keyword_exist_in_schema[inputs0-not]
ERROR test_core.py::TestDiscovery::test_primary_keys_exist_in_schema[inputs0]
ERROR test_core.py::TestDiscovery::test_streams_has_sync_modes[inputs0] - Val...
ERROR test_core.py::TestDiscovery::test_additional_properties_is_true[inputs0]
ERROR test_core.py::TestDiscovery::test_backward_compatibility[inputs0] - Val...
ERROR test_core.py::TestDiscovery::test_primary_keys_data_type[inputs0] - Val...
ERROR test_core.py::TestBasicRead::test_read[inputs0] - ValueError: No catalo...
ERROR test_core.py::TestBasicRead::test_read[inputs1] - ValueError: No catalo...
ERROR test_full_refresh.py::TestFullRefresh::test_sequential_reads[inputs0]
ERROR test_incremental.py::TestIncremental::test_two_sequential_reads[inputs0]
ERROR test_incremental.py::TestIncremental::test_read_sequential_slices[inputs0]
ERROR test_incremental.py::TestIncremental::test_state_with_abnormally_large_values[inputs0]
FAILED test_core.py::TestConnection::test_check[inputs0] - AssertionError: Co...
FAILED test_core.py::TestConnection::test_check[inputs2] - AssertionError: Co...
FAILED test_core.py::TestConnection::test_check[inputs4] - AssertionError: Co...
FAILED test_core.py::TestDiscovery::test_discover[inputs0] - IndexError: list...
== 4 failed, 28 passed, 7 skipped, 8 warnings, 16 errors in 114.62s (0:01:54) ==
- In contrast, the following PRs do not report the error:
Suggestion
- Please investigate the issue of running the Dagger container locally. It maybe causes the mass errors reported.
- Please investigate if there is dependency between the host/OS the container is run on. That could explain why those tests may succeed (if run on hosts with different OS).
- Please update the documentation, specifically:
- Acceptance Tests Reference
- Connector Acceptance Tests
with instructions how to resolve those issues locally.
Metadata
Metadata
Assignees
Labels
No labels