Closed oscarbatori closed 4 years ago
These changes look good, but they don't exactly solve the core problem. As we discussed this morning, we have to weigh the tradeoffs of using the sql-server to read/write the repo vs using the CLI. As I see it:
@timsehn / @zachmu - do you guys have an opinion here?
I like using the SQL server in doltpy. The problems are not going away because we avoid the path. This needs to work.
Maybe we can provide both interfaces and a switch? This means if one is blocked, you can try the other and see if it works. This will give us better repros.
For avoiding the MySQL client, we could use dolt sql -r csv
as the read interafce. On the write path we could just assemble the queries and pipe in via dolt sql < <file>
?
The switch idea definitely seems like a good way to reproduce and debug problems as we keep working on this.
This pull request addresses the following issues:
47 implements more robust handling of server processes, including cleaning up on exit; the library also no longer assumes the running server process is a child of caller process (by eliminating checks to the
Dolt.server
attribute); also added richer set of exceptions for helping user see root cause of failed server interactions49 we now expose logging configurations inside
dolt.core
viaLOG_LEVEL
andHANDLERS
variables, these are passed to a function for the logger factory that the library uses16 README is now current
28
clone_repo
is nowclone
, and it correctly implements the same behavior as the CLI for cloning a repo, that is the directory does not have to be explicitly passed