Re: [sqlalchemy] SQL Server, OPENJSON and large blobs of JSON as placeholder bind values

2020-11-30 Thread Paul Harrington
No worries! I will have a shot at some of them myself. I think it will be much easier than my first Python project in 2008 which was trying to write a backend for Sybase for SQLAlchemy! On Monday, November 30, 2020 at 6:19:50 PM UTC-5 Mike Bayer wrote: > I had a notion of writing a server side

Re: [sqlalchemy] constructing `Mapper` objects is slow (≈4 seconds) when running a local test

2020-11-30 Thread Bill Finn
Hi Mike, Thanks very much for the helpful response. I'll include a few follow-up notes below, but I suspect the solution to our problem is either to: 1. partition our tests such that any given test only imports the models that it depends on (rather than blanketly importing all of the model

Re: [sqlalchemy] constructing `Mapper` objects is slow (≈4 seconds) when running a local test

2020-11-30 Thread Mike Bayer
On Mon, Nov 30, 2020, at 5:17 PM, Bill Finn wrote: > Hello! > > We're running a unit test that includes constructing ≈330 tables & ≈2,000 > columns total in a local PostgreSQL 10.13 database (on disk, not in memory). > After profiling the test, we found that it takes ≈4 seconds to create all

Re: [sqlalchemy] SQL Server, OPENJSON and large blobs of JSON as placeholder bind values

2020-11-30 Thread Mike Bayer
I had a notion of writing a server side ORM likely for PostgreSQL where we'd leverage PostgreSQL's Python scripting platform to do something interesting along those lines. sorry my answers were so negative, those are just all very SQL-Server-esque patterns which are fine but don't have much

[sqlalchemy] constructing `Mapper` objects is slow (≈4 seconds) when running a local test

2020-11-30 Thread Bill Finn
Hello! We're running a unit test that includes constructing ≈330 tables & ≈2,000 columns total in a local PostgreSQL 10.13 database (on disk, not in memory). After profiling the test, we found that it takes ≈4 seconds to create all of the SQLAlchemy `Mapper` objects [0], which are currently a

Re: [sqlalchemy] SQL Server, OPENJSON and large blobs of JSON as placeholder bind values

2020-11-30 Thread Paul Harrington
OPENJSON is awesome! I think you may find it useful as a performance optimization for persisting a session with thousands of dirty objects from the same class: you could serialize the state as a JSON object and send it over to the server as a single scalar and 'inflate' it back into rowsets at

Re: [sqlalchemy] SQL Server, OPENJSON and large blobs of JSON as placeholder bind values

2020-11-30 Thread Mike Bayer
hey there - took a quick look and we don't support anything with variable declarations, multiple statements in a single string, or multiple result sets. All of that is outside of SQLAlchemy expression languages scope. Since what you're doing is extremely specific to a certain database, if

[sqlalchemy] SQL Server, OPENJSON and large blobs of JSON as placeholder bind values

2020-11-30 Thread Paul Harrington
Hello Community! I have not posted here for several years as I have been getting along just fine with the excellent SQLAlchemy toolkit and the excellent documentation. However, I am trying to do something a bit fancy since all the SQL Server dataservers I use are running versions that support