diff --git a/neo4j/io/_bolt3.py b/neo4j/io/_bolt3.py index ad90a6529..06ac3328c 100644 --- a/neo4j/io/_bolt3.py +++ b/neo4j/io/_bolt3.py @@ -45,9 +45,9 @@ SessionExpired, ) from neo4j.io import ( - check_supported_server_product, Bolt, BoltPool, + check_supported_server_product, ) from neo4j.io._common import ( CommitResponse, @@ -62,6 +62,7 @@ Unpacker, ) + log = getLogger("neo4j") diff --git a/neo4j/io/_bolt4.py b/neo4j/io/_bolt4.py index ee4c91374..3051f499a 100644 --- a/neo4j/io/_bolt4.py +++ b/neo4j/io/_bolt4.py @@ -62,6 +62,7 @@ Packer, ) + log = getLogger("neo4j") diff --git a/neo4j/work/result.py b/neo4j/work/result.py index 19d768b42..6e8a097e5 100644 --- a/neo4j/work/result.py +++ b/neo4j/work/result.py @@ -47,7 +47,6 @@ def __init__(self, connection, on_network_error): connection raises of of the caught errors. The callback takes the error as argument. :type on_network_error callable - """ self._connection = connection self._on_network_error = on_network_error diff --git a/testkitbackend/backend.py b/testkitbackend/backend.py index 0a406a4ad..fb73af1aa 100644 --- a/testkitbackend/backend.py +++ b/testkitbackend/backend.py @@ -152,10 +152,10 @@ def _process(self, request): if isinstance(e, Neo4jError): payload["code"] = e.code self.send_response("DriverError", payload) - except Exception as e: - traceback.print_exception(type(e), e, e.__traceback__) - self.send_response("BackendError", - {"msg": "%s: %s" % (type(e), e)}) + except Exception: + tb = traceback.format_exc() + log.error(tb) + self.send_response("BackendError", {"msg": tb}) def send_response(self, name, data): """ Sends a response to backend. diff --git a/testkitbackend/skipped_tests.json b/testkitbackend/skipped_tests.json index 0967ef424..4adc212fa 100644 --- a/testkitbackend/skipped_tests.json +++ b/testkitbackend/skipped_tests.json @@ -1 +1,68 @@ -{} +{ + "stub.retry.TestRetryClustering.test_retry_ForbiddenOnReadOnlyDatabase_ChangingWriter": + "Closes connection to router after ROUTE", + "stub.routing.Routing.test_should_use_resolver_during_rediscovery_when_existing_routers_fail": + "DNS resolver not implemented", + "stub.routing.RoutingV3.test_should_use_resolver_during_rediscovery_when_existing_routers_fail": + "DNS resolver not implemented", + "stub.routing.RoutingV4.test_should_use_resolver_during_rediscovery_when_existing_routers_fail": + "DNS resolver not implemented", + "stub.routing.NoRouting.test_should_use_resolver_during_rediscovery_when_existing_routers_fail": + "DNS resolver not implemented", + "stub.routing.Routing.test_should_request_rt_from_all_initial_routers_until_successful": + "DNS resolver not implemented", + "stub.routing.RoutingV3.test_should_request_rt_from_all_initial_routers_until_successful": + "DNS resolver not implemented", + "stub.routing.RoutingV4.test_should_request_rt_from_all_initial_routers_until_successful": + "DNS resolver not implemented", + "stub.routing.NoRouting.test_should_request_rt_from_all_initial_routers_until_successful": + "DNS resolver not implemented", + "stub.routing.Routing.test_should_successfully_acquire_rt_when_router_ip_changes": + "DNS resolver not implemented", + "stub.routing.RoutingV3.test_should_successfully_acquire_rt_when_router_ip_changes": + "DNS resolver not implemented", + "stub.routing.RoutingV4.test_should_successfully_acquire_rt_when_router_ip_changes": + "DNS resolver not implemented", + "stub.routing.NoRouting.test_should_successfully_acquire_rt_when_router_ip_changes": + "DNS resolver not implemented", + "stub.routing.Routing.test_should_read_successfully_on_empty_discovery_result_using_session_run": + "Driver iterates over results of custom resolver and settles on first connection yielding a successful handshake", + "stub.routing.RoutingV3.test_should_read_successfully_on_empty_discovery_result_using_session_run": + "Driver iterates over results of custom resolver and settles on first connection yielding a successful handshake", + "stub.routing.RoutingV4.test_should_read_successfully_on_empty_discovery_result_using_session_run": + "Driver iterates over results of custom resolver and settles on first connection yielding a successful handshake", + "stub.routing.NoRouting.test_should_read_successfully_on_empty_discovery_result_using_session_run": + "Driver iterates over results of custom resolver and settles on first connection yielding a successful handshake", + "stub.routing.Routing.test_should_retry_read_tx_and_rediscovery_until_success": + "Driver iterates over results of custom resolver and settles on first connection yielding a successful handshake", + "stub.routing.RoutingV3.test_should_retry_read_tx_and_rediscovery_until_success": + "Driver iterates over results of custom resolver and settles on first connection yielding a successful handshake", + "stub.routing.RoutingV4.test_should_retry_read_tx_and_rediscovery_until_success": + "Driver iterates over results of custom resolver and settles on first connection yielding a successful handshake", + "stub.routing.NoRouting.test_should_retry_read_tx_and_rediscovery_until_success": + "Driver iterates over results of custom resolver and settles on first connection yielding a successful handshake", + "stub.routing.Routing.test_should_retry_write_until_success_with_leader_change_using_tx_function": + "Driver opens a new connection each time to get a fresh routing table", + "stub.routing.RoutingV3.test_should_retry_write_until_success_with_leader_change_using_tx_function": + "Driver opens a new connection each time to get a fresh routing table", + "stub.routing.RoutingV4.test_should_retry_write_until_success_with_leader_change_using_tx_function": + "Driver opens a new connection each time to get a fresh routing table", + "stub.routing.NoRouting.test_should_retry_write_until_success_with_leader_change_using_tx_function": + "Driver opens a new connection each time to get a fresh routing table", + "stub.routing.Routing.test_should_retry_write_until_success_with_leader_shutdown_during_tx_using_tx_function": + "Driver opens a new connection each time to get a fresh routing table", + "stub.routing.RoutingV3.test_should_retry_write_until_success_with_leader_shutdown_during_tx_using_tx_function": + "Driver opens a new connection each time to get a fresh routing table", + "stub.routing.RoutingV4.test_should_retry_write_until_success_with_leader_shutdown_during_tx_using_tx_function": + "Driver opens a new connection each time to get a fresh routing table", + "stub.routing.NoRouting.test_should_retry_write_until_success_with_leader_shutdown_during_tx_using_tx_function": + "Driver opens a new connection each time to get a fresh routing table", + "stub.routing.Routing.test_should_revert_to_initial_router_if_known_router_throws_protocol_errors": + "Driver uses custom resolver for each connection, not only initial seeding", + "stub.routing.RoutingV3.test_should_revert_to_initial_router_if_known_router_throws_protocol_errors": + "Driver uses custom resolver for each connection, not only initial seeding", + "stub.routing.RoutingV4.test_should_revert_to_initial_router_if_known_router_throws_protocol_errors": + "Driver uses custom resolver for each connection, not only initial seeding", + "stub.routing.NoRouting.test_should_revert_to_initial_router_if_known_router_throws_protocol_errors": + "Driver uses custom resolver for each connection, not only initial seeding" +}