What happened:
Got an error when dealing with quote in filenames such as "chiffre d'affaire"
What you expected to happen:
Retrieve Data correctly
How to reproduce it (as minimally and precisely as possible):
Try to import metadata related to a filename containing a quote such as "Chiffre d'affaire" (in french)
Anything else we need to know?:
This happens during this phase :
INFO:root:===> Synchronizing Tableau :: Data Catalog metadata...
Files without quote ' do not encounter any issues
_Here is the error logs :
The above exception was the direct cause of the following exception:
Traceback (most recent call last):
File "/Users/tgadiole/projects/tableau/tableau/bin/google-datacatalog-tableau-connector", line 8, in
sys.exit(main())
File "/Users/tgadiole/projects/tableau/tableau/lib/python3.8/site-packages/google/datacatalog_connectors/tableau/tableau2datacatalog_cli.py", line 79, in main
Tableau2DataCatalogCli.run(argv[1:] if len(argv) > 0 else argv)
File "/Users/tgadiole/projects/tableau/tableau/lib/python3.8/site-packages/google/datacatalog_connectors/tableau/tableau2datacatalog_cli.py", line 32, in run
args.func(args)
File "/Users/tgadiole/projects/tableau/tableau/lib/python3.8/site-packages/google/datacatalog_connectors/tableau/tableau2datacatalog_cli.py", line 67, in __run_synchronizer
sync.DataCatalogSynchronizer(
File "/Users/tgadiole/projects/tableau/tableau/lib/python3.8/site-packages/google/datacatalog_connectors/tableau/sync/datacatalog_synchronizer.py", line 64, in run
self.__run_full_sync()
File "/Users/tgadiole/projects/tableau/tableau/lib/python3.8/site-packages/google/datacatalog_connectors/tableau/sync/datacatalog_synchronizer.py", line 71, in __run_full_sync
self.__sites_synchronizer.run()
File "/Users/tgadiole/projects/tableau/tableau/lib/python3.8/site-packages/google/datacatalog_connectors/tableau/sync/metadata_synchronizer.py", line 136, in run
ingestor.ingest_metadata(assembled_entries, tag_templates_dict)
File "/Users/tgadiole/projects/tableau/tableau/lib/python3.8/site-packages/google/datacatalog_connectors/commons/ingest/datacatalog_metadata_ingestor.py", line 65, in ingest_metadata
self.__ingest_entries(entry_group_name, assembled_entries_data, config)
File "/Users/tgadiole/projects/tableau/tableau/lib/python3.8/site-packages/google/datacatalog_connectors/commons/ingest/datacatalog_metadata_ingestor.py", line 94, in __ingest_entries
entry = self.__datacatalog_facade.upsert_entry(
File "/Users/tgadiole/projects/tableau/tableau/lib/python3.8/site-packages/google/datacatalog_connectors/commons/datacatalog_facade.py", line 100, in upsert_entry
persisted_entry = self.create_entry(
File "/Users/tgadiole/projects/tableau/tableau/lib/python3.8/site-packages/google/datacatalog_connectors/commons/datacatalog_facade.py", line 48, in create_entry
entry = self.__datacatalog.create_entry(parent=entry_group_name,
File "/Users/tgadiole/projects/tableau/tableau/lib/python3.8/site-packages/google/cloud/datacatalog_v1beta1/gapic/data_catalog_client.py", line 1481, in create_entry
return self.inner_api_calls["create_entry"](
File "/Users/tgadiole/projects/tableau/tableau/lib/python3.8/site-packages/google/api_core/gapic_v1/method.py", line 145, in call
return wrapped_func(*args, **kwargs)
File "/Users/tgadiole/projects/tableau/tableau/lib/python3.8/site-packages/google/api_core/retry.py", line 281, in retry_wrapped_func
return retry_target(
File "/Users/tgadiole/projects/tableau/tableau/lib/python3.8/site-packages/google/api_core/retry.py", line 184, in retry_target
return target()
File "/Users/tgadiole/projects/tableau/tableau/lib/python3.8/site-packages/google/api_core/timeout.py", line 214, in func_with_timeout
return func(*args, **kwargs)
File "/Users/tgadiole/projects/tableau/tableau/lib/python3.8/site-packages/google/api_core/grpc_helpers.py", line 59, in error_remapped_callable
six.raise_from(exceptions.from_grpc_error(exc), exc)
File "", line 3, in raise_from
google.api_core.exceptions.InvalidArgument: 400 "YTD Chiffre d'affaires" is an invalid value for CreateEntryRequest.entry.display_name. It must: contain only unicode letters, numbers, underscores, dashes and spaces; not start or end with spaces; and be at most 200 bytes long when encoded in UTF-8.