@@ -121,28 +121,27 @@ def standard_tensorboard_wsgi(flags, plugin_loaders, assets_zip_provider):
121121 loading_multiplexer = multiplexer
122122 reload_interval = flags .reload_interval
123123 db_uri = flags .db
124+ db_connection_provider = None
124125 # For DB import mode, create a DB file if we weren't given one.
125126 if flags .db_import and not flags .db :
126127 tmpdir = tempfile .mkdtemp (prefix = 'tbimport' )
127128 atexit .register (shutil .rmtree , tmpdir )
128129 db_uri = 'sqlite:%s/tmp.sqlite' % tmpdir
129- db_module , db_connection_provider = get_database_info (db_uri )
130130 if flags .db_import :
131131 # DB import mode.
132- if db_module != sqlite3 :
133- raise base_plugin .FlagsError ('--db_import is only compatible with sqlite DBs' )
134132 logger .info ('Importing logdir into DB at %s' , db_uri )
133+ db_connection_provider = create_sqlite_connection_provider (db_uri )
135134 loading_multiplexer = db_import_multiplexer .DbImportMultiplexer (
136135 db_connection_provider = db_connection_provider ,
137136 purge_orphaned_data = flags .purge_orphaned_data ,
138137 max_reload_threads = flags .max_reload_threads )
139138 elif flags .db :
140139 # DB read-only mode, never load event logs.
141140 reload_interval = - 1
141+ db_connection_provider = create_sqlite_connection_provider (db_uri )
142142 plugin_name_to_instance = {}
143143 context = base_plugin .TBContext (
144144 data_provider = data_provider ,
145- db_module = db_module ,
146145 db_connection_provider = db_connection_provider ,
147146 db_uri = db_uri ,
148147 flags = flags ,
@@ -492,28 +491,6 @@ def _reload():
492491 raise ValueError ('unrecognized reload_task: %s' % reload_task )
493492
494493
495- def get_database_info (db_uri ):
496- """Returns TBContext fields relating to SQL database.
497-
498- Args:
499- db_uri: A string URI expressing the DB file, e.g. "sqlite:~/tb.db".
500-
501- Returns:
502- A tuple with the db_module and db_connection_provider TBContext fields. If
503- db_uri was empty, then (None, None) is returned.
504-
505- Raises:
506- ValueError: If db_uri scheme is not supported.
507- """
508- if not db_uri :
509- return None , None
510- scheme = urlparse .urlparse (db_uri ).scheme
511- if scheme == 'sqlite' :
512- return sqlite3 , create_sqlite_connection_provider (db_uri )
513- else :
514- raise ValueError ('Only sqlite DB URIs are supported now: ' + db_uri )
515-
516-
517494def create_sqlite_connection_provider (db_uri ):
518495 """Returns function that returns SQLite Connection objects.
519496
@@ -529,7 +506,7 @@ def create_sqlite_connection_provider(db_uri):
529506 """
530507 uri = urlparse .urlparse (db_uri )
531508 if uri .scheme != 'sqlite' :
532- raise ValueError ('Scheme is not sqlite : ' + db_uri )
509+ raise ValueError ('Only sqlite DB URIs are supported : ' + db_uri )
533510 if uri .netloc :
534511 raise ValueError ('Can not connect to SQLite over network: ' + db_uri )
535512 if uri .path == ':memory:' :
0 commit comments