| FazBrowse GitHub Viewer | Trending | | Home |
| Tools: [Download Repo ZIP] [Original HTTPS Page] |
Sorry, something went wrong.
Add LoadFromDatabase<TInput> extension methods on DataOperationsCatalog that combine CreateDatabaseLoader<TInput>() and Load(DatabaseSource) into a single call, mirroring the existing LoadFromTextFile<TInput> sugar.
|
@dotnet-policy-service agree |
Sorry, something went wrong.
Replace the redundant LightGBM training test with a focused, self-contained in-memory SQLite test that verifies LoadFromDatabase loads the expected data through both the DatabaseSource and DbProviderFactory overloads. This scopes the test to the new data-loading API and avoids adding a training run to the test suite.
|
The failing DatabaseLoaderTests.Iris* tests (IrisLightGbm, IrisVectorLightGbm, IrisLightGbmWithTimeout, IrisSdcaMaximumEntropy) are failing due to the known LocalDB iris.mdf read-only attach issue tracked in #7657 — they fail independently of this change (my new LoadFromDatabaseLoadsExpectedData test uses in-memory SQLite and is unaffected). Could a maintainer confirm and/or re-run once #7657 is sorted? |
Sorry, something went wrong.
| Back | FazBrowse Home | New Git URL |
Adds LoadFromDatabase extension methods on DataOperationsCatalog, mirroring the existing LoadFromTextFile convenience API. This collapses the current three-step database-loading pattern into a single call.
Before:
var loader = mlContext.Data.CreateDatabaseLoader();
var source = new DatabaseSource(SqlClientFactory.Instance, connString, "SELECT * FROM Iris");
var data = loader.Load(source);
After:
var data = mlContext.Data.LoadFromDatabase(SqlClientFactory.Instance, connString, "SELECT * FROM Iris");
LoadFromDatabase(DatabaseSource source)
LoadFromDatabase(DbProviderFactory providerFactory, string connectionString, string commandText)
LoadFromDatabase(DbProviderFactory providerFactory, string connectionString, string commandText, int commandTimeoutInSeconds)
Why this approach
I followed the established LoadFromTextFile pattern in TextLoaderSaverCatalog so the new API stays consistent with the rest of the catalog. The methods simply compose the existing CreateDatabaseLoader() and Load(DatabaseSource) no new loading logic and argument validation is delegated to the existing DatabaseSource constructor.
Tests
Added IrisVectorLightGbmUsingLoadFromDatabase to DatabaseLoaderTests.cs, exercising the new API end-to-end through a LightGBM training pipeline.