Have Dataset#empty? ignore order.
This fixes a bug for me where I had called #empty? on a dataset
that I had ordered by a column named by Sequel.as, which did not
exist in the query used for #empty?.
Treat all PG::ConnectionBad exceptions as disconnect errors in the postgres adapter
Newer versions of ruby-pg have a PG::ConnectionBad exception class
that is used if the connection is bad. That's probably more
reliable than parsing exception messages, so use it by default in
the postgres adapter.
Still default to checking exception messages for PGError exceptions.
Also, assume all PQconsumeInput() error messages imply disconnection.
Use MSSQL-specific schema parsing instead of JDBC schema parsing with jdbc/sqlserver driver
This fixes the autoincrementing primary keys schema spec on
jdbc/sqlserver. It used to be that the JDBC schema parser was
more robust, which is why it was preferred, but that is no longer
true, so switching to the MSSQL-specific schema parser is better.
Add :auto_increment key to schema information for primary key columns (Fixes #919)
This includes implementations for the most common adapters
(PostgreSQL, MSSQL, MySQL, JDBC). It actually works on SQLite too,
though the test is skipped there, because all integer primary keys
are autoincrementing on SQLite.
Fix handling of Sequel::SQL::Blob instances in bound variables in the postgres adapter (Fixes #917)
This bug dates back to when support for bound variables was first
added. Basically, escaping bytea values not only escapes the bytea
but also string escapes, which doubles apostrophes. Since the
resulting value is not used SQL but as a bound variable, PostgreSQL
only unescapes the bytea and does not do the string unescaping first,
leading to the issue.
The pg gem supports using binary encoding for bytea values, which
allows you to use the values without encoding them, so just use
that. In addition to being more correct, this is almost certainly
faster for large bytea values.
Add an integration test for this issue, to see if any other adapters
are affected.
Add :preconnect Database option for immediately creating the maximum number of connections
In some cases, connecting to the database can take a long time
even if there isn't high latency between the database and the
application. In those cases, it would be nice to preconnect the
maximum number of connections on database initialization, reducing
the possibly of high latency during runtime.
For the sharded pools, this creates the maximum number of
connections to each shard.
Previously, this was possible to do manually (using a pair of queues
and an array of threads is one way), but even for the default
threaded pool it is tricky, and it's even trickier for the sharded
threaded pool. This makes it a simple option to turn on.
For consistency and to make testing easier, make all connection
pools support a max_size method. As the threaded pools already
supported this, this just adds a method that returns 1 to the
single connection pools.
This is being added as an option to the database instead of a public
method that can called anytime because allowing it to be called at
anytime would introduce race conditions or locking issues. By
making it an option that is called before the database instance is
returned to the user, this should avoid such problems.
Work around regression in jdbc-sqlite3 3.8.7 where empty blobs are returned as nil
getBytes returns nil instead of an 0 length byte[] instance in
jdbc-sqlite3 3.8.7. Add a wasNull check to catch this an return
an empty blob in that case, idea from Karol Bucek.
Details:
https://github.com/jruby/activerecord-jdbc-adapter/issues/605
https://bitbucket.org/xerial/sqlite-jdbc/issue/155
Make Database#create_table? and #create_join_table? not use IF NOT EXISTS if indexes are being added (Fixes #904)
If indexes are being added after CREATE TABLE, there is no way
to use CREATE TABLE IF NOT EXISTS, you have to check for existence
manually.
Allow Dataset#distinct to use a virtual row block.
Recognize disconnect errors in the postgres adapter when SSL is used (Fixes #900)
Make validates_unique use a qualified primary key if the dataset is joined (Fixes #895)
If the dataset is joined, an unqualified primary key reference
could be ambiguous, and would be ambiguous when
class_table_inheritance is used with auto_validations. This
qualifies the reference in such cases.
Note that there are other unqualified references still in the
query, but those can be qualified by using a :where option,
and don't affect the class_table_inheritance case.
Make Sequel::Model.cache_associations = false skip the database's schema cache when loading the schema
This now makes the option misnamed, since it does more than just
disabling caching the association metadata. However, any time
you are disabling caching of the association metadata, you are
probably also going to want to disable schema caching, so this
should make the option more usable in practice.
Make AssociationReflection#reciprocal not raise error if associated class contains association with invalid associated class
Previously, if model A has an association with model B, and
any associations in model B reference an invalid class,
calling reciprocal on the association reflection between model
A and model B would raise a NameError.
While this is good in that it alerts you to an error, I don't
think it's reciprocal's place to do so.
I'm on the fence about whether this is a good idea in general,
but for backwards compatibility this should probably go in. The
changes made since 4.14.0 make this more likely to happen in user
code.
Make create_view(:view_name, dataset, :materialized=>true) reversible on PostgreSQL
Add support for creating foreign tables on PostgreSQL using :foreign and :options create_table options
Testing is currently limited to testing the SQL syntax only.
Unfortunately, real testing is difficult because you need to be
a superuser to use the file_fdw and postgres_fdw extensions (or
at least you must specify an explicit password when using
postgres_fdw).
Raise Error if a primary key is necessary to use an association, but the model doesn't have a primary key
This is better than failing later with a NoMethodError or worse,
appearing to work but generating bogus queries.
Add PlaceholderLiteralizer#with_dataset, for returning a new literalizer using a modified dataset
While it doesn't make sense to call methods that would change the
SQL used, since the literalizer uses static SQL, this makes it
possible to change the row_proc or other non-SQL options while
still being able to use the loader, and without affecting the
original loader.
Remove optional argument for Postgres::{JSON,JSONB}Op#to_record and #to_recordset
PostgreSQL 9.4 beta 1 supported a optional 2nd argument for these
functions, but that was dropped in 9.4 beta 2.
Adding FoundationDB SQL Layer adapter
Squashed commit of the following:
commit
b7bce1421267790bc97a3b4d3ae81161191d4224
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Mon Sep 15 16:42:22 2014 -0400
Added fdbsql section to opening databases
commit
de3016ba94bd110a7193c3a021389daa87cc4467
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Mon Sep 15 16:38:46 2014 -0400
Updated jdbc docs to include fdbsql
commit
9c28d0f52f3363f647fc09cc2ac420f52de3764a
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Mon Sep 15 16:08:25 2014 -0400
Got specs running against fdbsql
commit
d5a3828cdf9d105fc3915d7e753946459476b11c
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Mon Sep 15 15:33:13 2014 -0400
Include fdbsql in builtin adapter list
commit
507d7812a05cd394bb1d525127946d93d57c9a3f
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Mon Sep 15 15:27:41 2014 -0400
Switched to Sequel.require
this method ensures that it's the same Sequel, and not grabbing,
for example, part of the fdbsql adapter from your local path
commit
75068c65af93195fc1009cafd7ab8c391c14bd88
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Mon Sep 15 15:25:56 2014 -0400
Removed license headers
These don't appear anywhere else in the source
commit
50f0bb0279a06de705c71647936874c255cef8c0
Merge:
9f9d811 72710d7
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Mon Sep 15 15:22:19 2014 -0400
Merge external fdbsql adapter upstream
Fdbsql adapter was developed outside as a 3rd-party adapter, but now
it's being merged upstream to be maintained with Sequel proper.
Merge branch 'fdbsql-external' into fdbsql
commit
72710d7976e013d4b6cc58844468f1851a06c013
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Mon Sep 15 15:17:58 2014 -0400
Removed files specific to external adapter
None of these files are necessary when fdbsql is integrated into
Sequel
commit
9f9d811279aa51ec925d88fb9ad5b74624708637
Merge:
dc999df ace613e
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Mon Sep 15 15:09:38 2014 -0400
Merge branch 'master' into fdbsql
commit
1f83c49ae3c92afec66b1531004c947f76420206
Merge:
ce8ce5c 345c1d5
Author: Nathan Williams <nathanlws@gmail.com>
Date: Mon Sep 15 14:49:52 2014 -0400
Merge pull request #13 from ScottDugas/docs2
Added comments
commit
345c1d5cab7921cfb7e38ada366811051375c17c
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Mon Sep 15 14:34:33 2014 -0400
Somehow Connection.query got in there twice
once private and once public, whoops
commit
ce8ce5ce9a289002ad10e7e59a16cccdc61e590d
Merge:
27aab48 f18c4f9
Author: Nathan Williams <nathanlws@gmail.com>
Date: Mon Sep 15 14:08:36 2014 -0400
Merge pull request #12 from ScottDugas/reorganize
Reorganize to match Sequel's style
commit
be0a3dbccbb06823b531ac5828d0a34e09d43a9e
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Mon Sep 15 12:18:03 2014 -0400
Document the shared code & privatized one method
commit
c522f06a4f4db615bae824d7484a2aad76de7e1e
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Mon Sep 15 12:06:02 2014 -0400
Document pg specific code & privatized one method
commit
f533c261da259dae5fee451815a9dc7297b69ce5
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Mon Sep 15 11:47:45 2014 -0400
Document JDBC::Fdbsql
commit
f18c4f9d300f7862356337c463a31da5cf17c7be
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Mon Sep 15 13:43:30 2014 -0400
publicized bound_variable_arg
commit
bfb6e22aa020af51f48f7b1fd93d84b94d872717
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Mon Sep 15 12:30:21 2014 -0400
unprivatized Connection.query
I was right the first time
commit
8372d02b6aa0a1ac01f9c4823950056e7509c980
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Mon Sep 15 12:23:32 2014 -0400
privatized adapter_initialize
commit
f503511ab15164239a9349598bec01840425e35b
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Mon Sep 15 12:22:25 2014 -0400
privatized Connection.query
commit
9f249ef867854af47ff4b6dfe24edc0f4129b3a2
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Mon Sep 15 12:20:47 2014 -0400
Publicized a method
commit
6e05274ea7e42a51cd35dcd85f01ec4299c4b574
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Mon Sep 15 11:41:23 2014 -0400
Rearranged jdbc specific code
commit
f24c8f2791fb01b92ac48fb959f545cc4fb603e7
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Mon Sep 15 11:39:09 2014 -0400
Rearranged PG specific code
commit
549eafa7af86615f2d078bff0b3a001c2e4b1e34
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Mon Sep 15 11:20:46 2014 -0400
Rearranged DatasetMethods
commit
a9549023f34a03e25157070c0d860ac963d4d7cb
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Mon Sep 15 11:13:01 2014 -0400
Reorganized DatabaseMethods
commit
27aab48b2de26d19640da6f7556063790bd89bcc
Merge:
a113120 bdd9903
Author: Nathan Williams <nathanlws@gmail.com>
Date: Mon Sep 15 10:29:35 2014 -0400
Merge pull request #11 from ScottDugas/2.0.0
Require v2.0.0 of the sql layer
commit
bdd9903ec0b4e9d2ac5e36732b70dc86ee4af686
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Mon Sep 15 10:09:42 2014 -0400
Require v2.0.0 of the sql layer
commit
a113120d7783873429ef752abc4f002797e960b9
Merge:
bb49191 46d9101
Author: Nathan Williams <nathanlws@gmail.com>
Date: Fri Sep 12 18:31:35 2014 -0400
Merge pull request #10 from ScottDugas/jdbc
Jdbc support
commit
46d9101c546af7e6165139630daf36e340d68e9c
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Fri Sep 12 17:47:41 2014 -0400
Use builtin UnnumberedArgumentMapper
commit
4d2489aedcdc0e4d65027052ba24ff24297fd10e
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Fri Sep 12 17:39:30 2014 -0400
Removed unnecessary override
This used to be necessary but the sql layer has a default
NOT NULL on PRIMARY now, so we don't need to override
commit
299aae190fb5d583caeaccd42321c624cbe8c7c3
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Fri Sep 12 17:35:08 2014 -0400
Removed jdbc-postgres dependency
Yeah, not needed
commit
fd101f9bc54157cdcdf1847caf14e73fad7a0732
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Fri Sep 12 17:32:54 2014 -0400
Updated comment
commit
58529723531e82a87d6ca0b27c9a223b21152478
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Fri Sep 12 17:00:59 2014 -0400
Set returning on prepared statements too
commit
f626b7c52b11d997cdafb8705777c7d640c44b1b
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Fri Sep 12 16:24:53 2014 -0400
Handle stale prepared statements
commit
09c886b1f0087dab1622d066be6079d418090487
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Fri Sep 12 16:07:27 2014 -0400
Not going to test connection options
it's just too hard to mock, and it should all be handled by jdbc
commit
b71f11d069e522f6d0aa124c911b917e41402489
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Fri Sep 12 16:01:15 2014 -0400
Giving up on checking version for jdbc
I could not get it to test or inject into creation, so I'll wait
until I have to deal with it.
commit
10d98daf922111d3e327bc3304ff4e164aa7803d
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Fri Sep 12 14:46:36 2014 -0400
Retry prepared statements
commit
dc999df22a81701251c3a234e413b9d0f88a5f85
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Fri Sep 12 14:39:41 2014 -0400
Pass block along to helper
commit
e5702943fb88d92bdd8962d8a97bf03bef82cbd0
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Fri Sep 12 14:32:23 2014 -0400
Need another argument in the helper
commit
ee2b676de11ecd5824b9a93d86c1bc6d39adaf18
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Fri Sep 12 14:30:40 2014 -0400
Moved variable into helper method
commit
fb31df7a7c557cdc209ddd658588ed04db7f9473
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Fri Sep 12 14:29:11 2014 -0400
Added sql parameter for prepared statement
commit
6958eccda29e7cb8ee894588e75fc72c8d8cb948
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Fri Sep 12 14:26:40 2014 -0400
Respond to helper rename
commit
b986ab86ac432ec88d1a356b9c5a06729dc00d12
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Fri Sep 12 14:25:00 2014 -0400
Fixed extraneous end tag
commit
4ffc23c28e04df631642c8613403c83bf537ae71
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Fri Sep 12 14:22:36 2014 -0400
extracted prepared statement helper method
so that fdbsql can retry that part on notCommitted
commit
d06e8a9fa8d84e705a6f7582af6d444122cf0b04
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Fri Sep 12 14:22:20 2014 -0400
Made method private
commit
2af9a0ea3046fdd50d02ceb3294de88d2b8e85ad
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Fri Sep 12 14:19:58 2014 -0400
execute on connection instead of statement
commit
6d99fb5a06d1969ca13bc292f3e7a3316f3b4bb9
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Fri Sep 12 13:57:23 2014 -0400
removed prepared statement tests
I'm just not going to worry about prepared statements for now
commit
c477f72cbb51cef26be743eac3501ac766dda1b4
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Fri Sep 12 13:50:03 2014 -0400
Only retry 10 times
commit
da7508f0ff7b88f6ee69e656ae0e76cc218fdcda
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Fri Sep 12 13:48:37 2014 -0400
Only retry in auto commit mode
commit
140e256b89747c44a3c441642aab80d23f6b5727
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Fri Sep 12 13:37:45 2014 -0400
retry in the connection
commit
97caddb68dd887f1b694854f0d60c302c8e69aa4
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Fri Sep 12 13:18:16 2014 -0400
Extracted helper method
fdbsql needs to wrap this with a retry loop for NotCommitted errors
when in autocommit mode.
commit
960708e7f050c3c872e4feebde815f9b134826fc
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Fri Sep 12 11:56:22 2014 -0400
Retry unconditionally for NotCommitted
commit
f409c00a5bc762e369e94461309741fafd10ad79
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Fri Sep 12 11:46:03 2014 -0400
spec don't retry forever
commit
647ae268b628d26a9835224152d02d1d49065ed4
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Fri Sep 12 11:30:40 2014 -0400
make sure we don't retry in transactions
commit
d0477bd145a3feef31ed65db3f4b88fbe1cdfe5b
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Fri Sep 12 10:23:00 2014 -0400
jdbc specific database_exception_sqlstate
jdbc exceptions have a helpful sql_state method
commit
fe922e77d0afa7f88c23ad85224456734ceffe02
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Fri Sep 12 10:14:15 2014 -0400
Prepped fdbsql_spec for jdbc specs
commit
a9b25f45ee1d59def95e609b7b874c74dda1e8e0
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Thu Sep 11 17:12:04 2014 -0400
Point to jdbc branch of Sequel
commit
cf7d572c4289fbefa49fc63586b156257f6dd1bd
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Thu Sep 11 17:11:32 2014 -0400
Register DateArithmetic extension for pg & jdbc
commit
90802fa3f8b1d470c479523997e783e92f100c70
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Thu Sep 11 17:03:09 2014 -0400
Ignore two tests that are temporarily failing
these should be fixed with 2.1.0 or maybe 2.0.1
commit
7d5969101ed63d9234814fefa6405ca091919cb7
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Thu Sep 11 16:52:44 2014 -0400
Specify database_type for fdbsql shared
this is what's used in the guards
commit
ab89ab6ca7dd544d547aebb393c17c1ff85c504b
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Thu Sep 11 16:51:27 2014 -0400
Just check database_type when guarding group
commit
6c8df1e05d414d094e7fb032ee87357b4aa4a86a
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Thu Sep 11 16:50:24 2014 -0400
Revert "Ignore jdbc:fdbsql too"
When fdbsql specifies the database_type, there's no need to
have [:jdbc, :fdbsql]
This reverts commit
33038f90281895d701ba354baa15de96dafadd68.
Conflicts:
spec/integration/plugin_test.rb
commit
f3184bc00301e4922e943554823335f1a9a08aa0
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Thu Sep 11 14:46:46 2014 -0400
Fixed parentheses
commit
33038f90281895d701ba354baa15de96dafadd68
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Thu Sep 11 14:43:36 2014 -0400
Ignore jdbc:fdbsql too
commit
95851cb81c8f505b389bb7c9d32f8777640e3f2d
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Thu Sep 11 13:40:03 2014 -0400
reset identifier mangling
now it will correctly lowercase things for fdb on jdbc
commit
7d2c4f53676ec8cfe36e765c62148041a8246c33
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Thu Sep 11 13:01:12 2014 -0400
Correctly rase disconnect errors in jdbc
commit
86f07a5de30f2f84114cb86b6ecbdb8f0916dd5c
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Thu Sep 11 11:23:21 2014 -0400
Moved prepared statement code to PG specific file
We don't need to do special handling of prepared statements (I think)
for jdbc, so move that code to pg specific code
commit
c472ca4a0751d800a3917f759728ee0a327fe12d
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Wed Sep 10 17:19:52 2014 -0400
Don't use Sequel.require on pg side either.
commit
87cd7529bcc42a6f66b4f4bceba8e1bdd9517680
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Wed Sep 10 17:10:24 2014 -0400
Fully reference constants
because those modules aren't included here
commit
bfe06a3786c40ebb05586a65670881b71c4e1ff2
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Wed Sep 10 17:03:04 2014 -0400
Moved execute_prepared_statement to pg code
jdbc already handles this for us
commit
c39dbd9463a5b0cd694b873ac14cfda7af676c7c
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Wed Sep 10 17:01:33 2014 -0400
removed puts statements
commit
28ec502186c66bf96ce2fbb180674f8f6119ce11
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Wed Sep 10 17:00:56 2014 -0400
Moved fetch_rows methods to pg code
commit
375a7a9cb50d9bad100b6d7fb8b8deed75cdddf3
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Wed Sep 10 16:53:26 2014 -0400
Use CONVERTED_EXCEPTIONS constant
so that it can be different on JDBC vs PG
commit
b0050aadeaafe8428a767da5ea8d7bf1d87a25d3
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Wed Sep 10 16:53:17 2014 -0400
Only pg has to set in_transaction
commit
4dea3155fd263a56e5e58374cf99cc794b74569b
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Wed Sep 10 16:52:25 2014 -0400
Moved our exceptions to shared file
commit
516b1c5205d02ab9a0aef3d856e49a3a58b3bc97
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Wed Sep 10 16:48:26 2014 -0400
require pg_types, so that it's there
commit
6a033afc7dbb314de99b44be900857bfe8f5dec5
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Wed Sep 10 16:48:17 2014 -0400
initialize instance variables
commit
86e1a0c8a5605f42dffa47c64ed9f8018b0ae24c
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Wed Sep 10 16:40:59 2014 -0400
Moved connect & execute to pg specific code
commit
2d1855725275256d4f3ed2123b6804c358ed4c1f
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Wed Sep 10 16:35:56 2014 -0400
Fixed DatasetMethods module name
commit
71911740ca73139f3cb94ca607035ff8c8324d04
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Wed Sep 10 16:35:46 2014 -0400
Moved set_adapter_scheme to pg specific code
commit
024ab21fefe9f80390b831d0dab6451c8812b980
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Wed Sep 10 16:31:59 2014 -0400
Move PGError to pg specific code
commit
88ec5519db9674fb6b589906a43c4cdab66e40f3
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Wed Sep 10 16:30:37 2014 -0400
Moved code into shared
commit
658174833a25f0916e72f3ddbc5a41aa646ad8c9
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Wed Sep 10 15:50:14 2014 -0400
Moved Database methods to shared
commit
5c9d57726296c87a0576d3d5226e2ec4dedad213
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Wed Sep 10 15:44:30 2014 -0400
Added section on running the unit tests with jdbc
(in case I get hit by a bus)
commit
38bd5493e57f1c0f8c91d900524d11890ec799b6
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Wed Sep 10 15:31:03 2014 -0400
Correctly reference jdbc driver
commit
bb491913337063ae0f4ddef467d1059199628074
Merge:
1cd96d4 b45c386
Author: Nathan Williams <nathanlws@gmail.com>
Date: Wed Sep 10 15:18:37 2014 -0400
Merge pull request #9 from ScottDugas/prep-for-upstream
Prep for upstream
commit
ea575a0ada072f3b6f46aa93916e64903bda7413
Merge:
b45c386 a37503f
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Wed Sep 10 15:03:40 2014 -0400
Merge branch 'jdbc-support' into jdbc
Conflicts:
sequel-fdbsql-adapter.gemspec
commit
b45c386955f4d2e3b7052da979f5740b56a5c1fa
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Wed Sep 10 13:15:41 2014 -0400
Moved dataset_spec into fdbsql_spec
commit
d64881f54554dc15412de1ccaad468d81006408b
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Wed Sep 10 13:14:45 2014 -0400
Moved database_spec into fdbsql_spec
commit
a892f3cd94191fe4d68daf08bc78668aab0ba6f5
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Wed Sep 10 13:10:41 2014 -0400
prepped connection_spec to hold all specs
commit
2560cd103ff757b5aa6dbdb827e673debea40d35
Merge:
9348918 f488158
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Wed Sep 10 12:57:02 2014 -0400
Merge branch '4.13.0' into prep-for-upstream
Conflicts:
lib/sequel/adapters/fdbsql/dataset.rb
There was one change in dataset.rb which is gone now, added that
to fdbsql.rb
commit
93489187f91becd00ac1bc26fa1cf8910727709a
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Wed Sep 10 12:50:29 2014 -0400
Correctly set DatasetClass
Had to declare it first; it was using the Sequel::Dataset class
commit
fd0a09a460c7814b8d59c174e1ab324a2edec061
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Wed Sep 10 12:38:39 2014 -0400
Added necessary require that I missed earlier
commit
0ddd32b9ae8795c1da560042c61b670505d5a4d5
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Wed Sep 10 12:25:51 2014 -0400
Moved schema_parsing.rb into fdbsql.rb
commit
a37503f8f16cdb47a28900899728b95ad59356b6
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Wed Sep 10 12:20:12 2014 -0400
Shell of a jdbc driver
commit
d3307b80f4af6f730652ae99e450fee35ed4baa9
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Wed Sep 10 10:39:55 2014 -0400
Allow jdbc SEQUEL_INTEGRATION_URL
commit
f4868de2e67ce8bd7e16c769922f896d29ef5932
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Tue Sep 9 18:17:34 2014 -0400
Skip pg dependency on jruby
commit
aeaaf4fec5adb47a20599be684df2a0f6aa9bf48
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Tue Sep 9 17:57:27 2014 -0400
Moved date_arithmetic.rb into fdbsql.rb
commit
7f86e242710bc21aa862a4a7a968540e69d7cbb0
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Tue Sep 9 17:55:57 2014 -0400
Removed old include calls
commit
bc692346f393c2d8fe35b26f4a1de2f01bc9134f
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Tue Sep 9 17:54:57 2014 -0400
Moved prepared_statements.rb into fdbsql.rb
commit
a9c2fec35ae1735ed6ae70b43dcd48bf52dfc70f
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Tue Sep 9 17:52:22 2014 -0400
Moved features.rb into fdbsql.rb
commit
e7335c72bc914fcbab4cfaefd6d9f8392aaa02c3
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Tue Sep 9 17:49:12 2014 -0400
Moved dataset.rb into fdbsql.rb
commit
746065aae7edef5c505bfb881dd140d9920db0ca
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Tue Sep 9 17:47:29 2014 -0400
Moved connection.rb into fdbsql.rb
commit
1cd96d443a28d7291c0244b4942320458edac0b2
Merge:
3ae88a6 f488158
Author: Nathan Williams <nathanlws@gmail.com>
Date: Fri Aug 29 12:50:26 2014 -0400
Merge pull request #8 from ScottDugas/4.13.0
Support for sequel 4.13.0
commit
f488158f1075cb7e1cae8c83c8188b5bdec0c8c1
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Fri Aug 29 12:41:30 2014 -0400
Use tag for fdbsql-4.13.0
commit
009c978c97578e2f844db440a2d0c04d0d06aab4
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Fri Aug 29 12:25:00 2014 -0400
Updated README that we support 4.12 & 4.13
commit
91595d472d158b1e2810f44b1a32e51ca3629bd0
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Fri Aug 29 12:24:32 2014 -0400
Added note about past_version potential
commit
be427d76757128e3344166e09e36c637e469f472
Merge:
089ea2e 9e9472b
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Fri Aug 29 10:38:04 2014 -0400
Merge branch 'master' into fdbsql
commit
c6b1b96f8ba2fc75c9748c77f2cafbc0540c545b
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Fri Aug 29 10:31:41 2014 -0400
Allow versions 4.12 and 4.13
commit
5b2eaa26bf0176284df13411b09060ef0bd43390
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Fri Aug 29 10:07:23 2014 -0400
Remove open ended rake requirement
commit
3ae88a623d28bfcb564cb441c9310a5f7ba27b97
Merge:
6c27953 4724792
Author: Nathan Williams <nathanlws@gmail.com>
Date: Thu Aug 28 18:50:14 2014 -0400
Merge pull request #7 from ScottDugas/ignore-failing-tests
Ignore failing tests
commit
f0c08b259086e17fb3ac047296cc81fd76b394b0
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Thu Aug 28 17:30:36 2014 -0400
Added missing method
commit
21aad05bdec0c1ba3ef2a5afe81b931df3013a04
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Thu Aug 28 17:30:26 2014 -0400
Changed dependencies to 4.13.0
commit
472479220efc0ab005163fdce1d2bffafe35056e
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Thu Aug 28 17:17:28 2014 -0400
Updated Sequel version in README
commit
aa16a72cc0ff75323c5eeb6a266b1af688d2fcf3
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Thu Aug 28 12:51:04 2014 -0400
Added comment
commit
96fc6ce82e730c291423212a59c2cec0b58272ea
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Thu Aug 28 12:29:26 2014 -0400
Updated RUNNING_UNIT_TESTS.md
commit
089ea2e54c8fb55f387f5e1d6625ac98968b823c
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Thu Aug 28 11:59:55 2014 -0400
Ignore test that has too many serial columns
I created a different version that doesn't specify the primary key
as Serial, so when you drop the constraint it won't conflict with
the hidden primary key
commit
c6dad3175bcf926d9bcd5deab90c9bfded576707
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Thu Aug 28 11:57:59 2014 -0400
Added test skipped in Sequel proper
the sequel test caused an error, but we can still do some of the
test, so I added it here
commit
4090f42d6d30072a9e81bcc07f7ebeb7762203f9
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Thu Aug 28 11:57:07 2014 -0400
Update sequel dependency in bundle to fork
this fork has patched the tests to ignore tests that don't work
with fdbsql. Maybe it will get merged upstream and we won't have
to point to a fork anymore
commit
18210f5c2adbdf266068fa3e2c10572bd49b9a99
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Thu Aug 28 11:45:29 2014 -0400
Pending last test failing from check constraint
This test does more, but when I tried to remove just that part
it ended up with 3 unless calls
commit
80ad8c368fec0575bf7495ee8ad9b07bb5d2db9a
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Thu Aug 28 11:32:00 2014 -0400
fdbsql does not support temporary tables
commit
a85838a86239fd0cce0194b0a3e75fd29ae03695
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Thu Aug 28 11:29:27 2014 -0400
Added a comment
commit
b855f6ddb35689b0f9e6a557675e2eb689c0de43
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Thu Aug 28 11:27:21 2014 -0400
Skip constraint tests for fdbsql
Fdbsql does not support constraint checks, so skip the entire
describe block. I wish there was a better way to do this, but it
looks like there isn't until rspec 3
commit
f970510f369ed86555d46837673e1fb1891b7273
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Thu Aug 28 10:46:09 2014 -0400
Ignore first check constraint spec
fdbsql doesn't support check constraints yet.
commit
6c27953ba3f222933686b7d88e9f6c7fc10abcb9
Merge:
c51bdeb efb87fb
Author: Nathan Williams <nathanlws@gmail.com>
Date: Thu Aug 28 09:32:01 2014 -0400
Merge pull request #6 from nathanlws/no-more-strip-table-name-fk-name
Do not modify constraint names from informatino_schema
commit
efb87fbd02534292bde33b16e95afb32823b4c34
Author: Nathan Williams <nathanlws@gmail.com>
Date: Wed Aug 27 18:15:01 2014 -0400
Constraint names in i_s are accurate and no longer need modified
commit
c51bdeb47b1ca3c3aa4cb9606548ff5ad8ea3b6a
Merge:
92d3e18 d8bf0f7
Author: Nathan Williams <nathanlws@gmail.com>
Date: Mon Jul 21 11:13:23 2014 -0400
Merge pull request #5 from nathanlws/new-deferrable-spelling
New deferrable spelling
commit
d8bf0f713f25144b5b83ef5a87c605260120bd6d
Author: Nathan Williams <nathanlws@gmail.com>
Date: Mon Jul 21 10:01:21 2014 -0400
deferable is now deferrable
commit
906915e48d51bb81cfd76225171cd49482b85012
Author: Nathan Williams <nathanlws@gmail.com>
Date: Mon Jul 21 09:54:33 2014 -0400
Rake is a development dependency
commit
5dd17b2c5e726f7c2d6d9ca214451538f1863989
Author: Nathan Williams <nathanlws@gmail.com>
Date: Mon Jul 21 09:40:02 2014 -0400
Stale reference
commit
92d3e18f58fcf3b97d9c16c732acb733f3eaab61
Merge:
7270c25 65315a5
Author: Nathan Williams <nathanlws@gmail.com>
Date: Mon Jul 7 12:30:38 2014 -0400
Merge pull request #4 from ScottDugas/last-few-things
Finishing up Sequel adapter for now
commit
65315a5640ed1e830fc22218ecb0d27f42d2ef44
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Mon Jul 7 12:22:34 2014 -0400
default to localhost
It seemed to work for me, but not for Nathan without a host provided
Put a default host in just to be sure. When you use pg directly
without a host, it will connect to the pg socket, which will, of course,
not work.
commit
888989efd16ac57c00ab25d79d746e9406ae4380
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Mon Jul 7 09:56:56 2014 -0400
Added closing quote
commit
a57602a050f147c9a168500f7d500412e1b6240b
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Mon Jul 7 09:35:05 2014 -0400
Updated sql-layer version in gemspec
should be 1.9.6
commit
aeac84ab845d5460cc6dc6ed21c7cdbf7f615d6e
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Mon Jul 7 09:30:57 2014 -0400
Change example to use "schema_name"
This is more consistent with the rest of the sql-layer docs
commit
55fd3d14e3fa5c7a75d827740875388479e51da0
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Wed Jul 2 12:13:08 2014 -0400
Handle connect options
commit
dcb610a1e825a40de40f3dbc8505246bffbb72e9
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Wed Jul 2 10:52:58 2014 -0400
Added specialized adapter method
commit
7270c25cb65f63fa4d8f16df074a2e00de2fd692
Merge:
23e20e5 4ab4f60
Author: Nathan Williams <nathanlws@gmail.com>
Date: Wed Jul 2 09:25:39 2014 -0400
Merge pull request #3 from ScottDugas/prepared-statements
Prepared statements support
commit
969eba0f6c3fa8817af9354bd7cfb6735ead2c35
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Tue Jul 1 18:42:56 2014 -0400
Apply notice_receiver option
commit
b83b601eaff43c94d92c3fb17000103874b7681d
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Tue Jul 1 17:52:19 2014 -0400
Return max length for (var)chars in schema_parse
commit
6ed3655f224d952f3aa8fb75d01fe588412986f1
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Tue Jul 1 17:49:38 2014 -0400
Don't override existing returning options
commit
7fd821f1d07bfbdae7d18eff97ad43ea985c4266
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Tue Jul 1 17:41:14 2014 -0400
Upgraded sequel dependency to 4.12.0
commit
4ab4f609ee7514125a69acece200c5ce7a139138
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Tue Jul 1 18:29:44 2014 -0400
Added specs for checking the version
commit
a70e77da87caf6d9f1bc9bb3bfa1781c38f55bee
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Tue Jul 1 18:20:36 2014 -0400
updated connection_spec to handle new connect code
now we set the reciever and grab the sql version
commit
78f810a69d0bc1044a3f137b4e89b564447acf46
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Tue Jul 1 18:07:43 2014 -0400
updated connection specs for set_notice_receiver
commit
f03c06356b84002294b1b7e36d8ca0d8cc74397c
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Tue Jul 1 17:35:19 2014 -0400
updated README / RUNNING_UNIT_TESTS
commit
a2e1edb7a0ab78af660994ceddd1193dc5584a90
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Tue Jul 1 17:11:47 2014 -0400
Removed old code for dealing with not null pk
It used to be that you had to specify that the primary key would be
not null, now the sql-layer implicitly sets primary keys to not null
commit
4f07a29f42dd356ffb178ca3c64ea4098bfbc13b
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Tue Jul 1 16:44:01 2014 -0400
Check that the version is 1.9.6 or greater
commit
ee2b1c872d9c24e1adaae2495ac457f13a8a57b0
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Tue Jul 1 16:37:26 2014 -0400
Swallow warnings
activerecord does this, and it makes the test output so much cleaner
commit
567dfbac6bac5fb8fee2fedd03ca1f102f8be16b
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Tue Jul 1 16:37:09 2014 -0400
FDBSQL does not support GROUP BY ROLLUP
613 examples
42 failures
commit
b96caeeccff2de5c5f653e7ed7f2be83a91019d9
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Tue Jul 1 16:30:59 2014 -0400
We do not support two phase commit
commit
0deaa48cebd625baca6187588bcca85042bb2940
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Tue Jul 1 16:00:39 2014 -0400
Fixed connection_spec for new initialize arg
just throw a nil in there for the db
commit
288ad4114bbe492e6b9b2186f81648488b80c9bd
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Tue Jul 1 15:57:27 2014 -0400
Format blob correctly for bound variable
commit
956bd14017a6c21dcf1e2f49d20dc27007ad5b9d
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Tue Jul 1 15:33:16 2014 -0400
Handle bound Time variables
commit
847ee758a2d07cba61620b368c7cfdb759cd26f1
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Tue Jul 1 14:30:54 2014 -0400
cleaned up prepared statement tests
commit
25ed6c5dab29381c67524aab25ce4cf41e235458
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Tue Jul 1 12:14:13 2014 -0400
Fixed spec
commit
58d648d156f29a02ff7f8418025bad40c55ee77b
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Tue Jul 1 12:11:32 2014 -0400
Retry on stale statement error
commit
99f1c2ec40ceada2647bd7bd3d1e6d832e54722f
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Tue Jul 1 12:02:51 2014 -0400
Added some specs
commit
4f82fee95be124b34ffe18dfc65bd9e394fe0a61
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Tue Jul 1 11:00:17 2014 -0400
Execute the prepared statements
commit
56f544a614fefde716c3e7ef0ec26c1bb63c7b36
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Tue Jul 1 10:54:50 2014 -0400
prepare statements
commit
1e2bba6cbe55a64b8c68be58d49510d6d63d0d94
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Tue Jul 1 10:43:37 2014 -0400
Remove module
that's only included in one place, and now I don't need the terrible
name
commit
dc049ba8a9a67dec07f8c7548b40ba260e379326
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Tue Jul 1 10:30:46 2014 -0400
Copied Basic PreparedStatementMethods from pg
commit
2bb19e0696d478392d02c440be2d76cbb66b8ca1
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Tue Jul 1 10:02:09 2014 -0400
Handle non-prepared bound arguments
You don't have to call prepare, to use bound arguments, handle that
commit
cb0fbda0c3783e16b88743f036d17a064af6729c
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Mon Jun 30 16:57:14 2014 -0400
copied postgres prepared statement code
Will need to make this work well, and go through for sanity
commit
23e20e5e21337db4e8bba6f49d74f14459226cce
Merge:
a59c694 79bef9b
Author: Nathan Williams <nathanlws@gmail.com>
Date: Mon Jun 30 16:31:21 2014 -0400
Merge pull request #2 from ScottDugas/supports
Methods that describe what the database/dataset supports
commit
79bef9b9697c9f3ee79557873660f1a1d325a067
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Mon Jun 30 16:17:09 2014 -0400
FDBSQL does support quoted function names
When I looked at this before I tried doing CURRENTTIMESTAMP which
is actually a pseudo-column and can't have () or quotes. real functions
like now() or rand() or concat() can be quoted
commit
c801d78b1987465b63b949364c6436b67743c138
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Mon Jun 30 15:39:13 2014 -0400
Updated comments on features where we align
commit
28fafc335fb310d19208192c3b9f81d3d80f26be
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Mon Jun 30 15:30:41 2014 -0400
FDBSQL does support regexp, yay!
614 examples
43 failures
The drop from before was that I updated to the latest sql-layer master
commit
27eeec0dfa604896da1b5819382563557134723d
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Mon Jun 30 13:01:51 2014 -0400
last of dataset supports_*? methods
610 -> 611 examples
61 -> 62 failures
The new test/failure is that we support rollup, but there's a bug
in it. I've added the bug to the trello board.
commit
78744dcfa6268ab69acfff071e9197e133ca6d30
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Mon Jun 30 12:30:28 2014 -0400
Moved supports_* from dataset.rb to features.rb
commit
c1487a9d99559acbb05658360508109f727351fb
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Mon Jun 30 12:25:53 2014 -0400
A bunch of features where we align with super
commit
8877b2e05e16b1d6d56e7499371d7c036f39c771
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Mon Jun 30 11:48:16 2014 -0400
We do support IS TRUE
commit
c69a4f1af15ebb300fd6f950135b1f56389b86cf
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Mon Jun 30 11:20:15 2014 -0400
We support INTERSECT ALL and EXCEPT ALL
commit
60f519583d85fd70193d0bc5e06a89a92591ba08
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Mon Jun 30 10:41:37 2014 -0400
We do support GROUP BY ROLLUP but not CUBE
commit
b5502eaa95682a18080bef80c0a2b8407cd2acc3
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Mon Jun 30 10:41:25 2014 -0400
We don't support distinct on
commit
5c9c4953f780898d15cd9430013099c8f3dcf2bf
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Fri Jun 27 17:09:54 2014 -0400
A bunch of things we align with super
commit
1891191ed29fa12182ce82f6da421ecb8638bfd3
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Fri Jun 27 17:09:41 2014 -0400
Include DatasetFeatures in Dataset
yeah, that would be helpful
commit
040b7f54b65c322fb44f325d279e12b7c1837d27
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Fri Jun 27 16:38:53 2014 -0400
Started implementing Dataset features list
The first ones align, but I wrote some specs to be sure
commit
1dc96000044bc76fcc5760b1d91d3bc3675e7300
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Fri Jun 27 16:36:18 2014 -0400
Stop constant redefinition warnings
commit
0b5264020d1f2d6d4b20c363be166821e18dd0b0
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Fri Jun 27 16:18:59 2014 -0400
Renamed Features module to DatabaseFeatures
commit
29b24a04cc3b165d1bf0224bf11966aebe5e666c
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Fri Jun 27 16:11:50 2014 -0400
Finished with index parsing
commit
5101b4b2aaf5429f22d77e2eb2b39f3bcd9dbc28
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Fri Jun 27 15:52:54 2014 -0400
Switch to USING construct on join
commit
91228a084da3534a29d90f1f622e3f1da1c74825
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Fri Jun 27 15:39:49 2014 -0400
Removed TODO comment
commit
ec5235df5eb640ad373405599e160745fd2e47a7
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Fri Jun 27 15:39:11 2014 -0400
A little more cleanup on schema parsing
commit
4b5a4e9f3f3864d8067e175103747c430d078785
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Fri Jun 27 15:33:54 2014 -0400
Extracted a couple helper methods in SchemaParsing
commit
a69ddb59a82c6e35b3e64ac30bf24cb342a6b2af
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Fri Jun 27 15:19:35 2014 -0400
Made method private
commit
fd1d7952d0b4c6007bec8f49bc73679be2973218
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Fri Jun 27 15:01:11 2014 -0400
Added index parsing
608 -> 610 examples
61 -> 61 failures
commit
95a1135548e36d88a5b56b9c9520a84cd3621586
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Fri Jun 27 12:54:41 2014 -0400
Use row[:name] as foreign_keys key
no need to compute constraint_name when calculating keys.
This commit marks the end of the foreign_key parsing
605 -> 608 examples
61 -> 61 failures
commit
8576dd8fa0c5718596d94f0dab7282dc4548d5c4
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Fri Jun 27 12:48:28 2014 -0400
Strip table name out of constraint name
The tests are passing, but there's some puts calls to remove, and
cleanup to do
commit
0918ce29e185a3d22115533a6cf68ed1451d903e
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Fri Jun 27 12:41:23 2014 -0400
Split foreign key search into two queries
as one query it got the cross product for keys and columns, which
isn't what we want, so do one query to get all the source columns
and another query to get all the destination columns
commit
29ec8a38becb064c747541e39f8c5ea79a9d6008
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Fri Jun 27 10:49:54 2014 -0400
Most of foreign key parsing
I kind of just wanted to commit before going forward, it doesn't
pass the specs yet.
commit
e44ab400acb7f9a4b7a0460691fc35992e2b6cc8
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Thu Jun 26 16:49:44 2014 -0400
Split out SchemaParsing module
the main database file was getting awfully big with sql
for parsing out the schema, so I split that out into it's own file
commit
fc4263742791fd7fe194d3dd3886905cb8b179fe
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Thu Jun 26 16:40:47 2014 -0400
More things FDBSQL doesn't support
commit
f6d7a9e3493203916eee77dffb21dea7b6ad52fd
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Thu Jun 26 16:18:24 2014 -0400
More things we don't support
commit
32f2708156569402ddf64e2e4e9015ffd9057639
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Thu Jun 26 16:08:22 2014 -0400
No need to say we support schema_parsing
It just falls back to whether the method is implemented, which it is
commit
a8de5fde0433d6d11e8e1fc805c5391e1863c301
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Thu Jun 26 16:08:08 2014 -0400
We don't support isolation levels
commit
f62b90215c80eb88b09094af4656c6fa3d76a87b
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Thu Jun 26 15:55:48 2014 -0400
Correctly return complex pks when using insert
605 -> 605 examples
91 -> 91 failures (excluding that last revert)
commit
7344c439ced54098114ff359415be4c1aff924cf
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Thu Jun 26 15:51:29 2014 -0400
Revert "Only return first primary key"
This reverts commit
9957a0e5fcbf4a9b7df14a4e95be4c73dc4534bc.
I think I can actually return the complicated primary key
commit
9957a0e5fcbf4a9b7df14a4e95be4c73dc4534bc
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Thu Jun 26 15:22:55 2014 -0400
Only return first primary key
It looks like this is what Sequel expects, although I don't like it
605 -> 605 examples
92 -> 61 failures
commit
1f71c8ded25aded7bd87d05f72243d66d58518ad
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Thu Jun 26 15:10:31 2014 -0400
Implemented views method
it just returns a list of the views in the schema
It looks like I broke a bunch of things by changing primary_key,
I will change it back, and then the failures should return to 61
integration specs
603 -> 605 examples
61 -> 92 failures
commit
eda3f295cd32e6f89812270ed11addd97fa42729
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Thu Jun 26 14:39:28 2014 -0400
Fixed schema_parse_table for other schemas
commit
74c772d66143d4304273c321b909abe0317fe7a9
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Thu Jun 26 14:32:36 2014 -0400
Switched primary_key to use Sequel syntax
commit
85c3509fd6563794332f0c341ff1d083b908a630
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Thu Jun 26 13:53:14 2014 -0400
Added a bunch of specs for primary_key
commit
1e0cfecd27712b304e8973453cc350c238cc1964
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Thu Jun 26 12:24:42 2014 -0400
Updated spec to expect Sequel error on not commit
We now wrap the exception, yay!
commit
cf3cd49f373e15490b95fb5c21feb31f3f11c828
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Thu Jun 26 12:23:44 2014 -0400
Redid schema_parse_table with Sequel syntax
commit
61494c6a90d61bc5219d301ae3fe210be51736f3
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Thu Jun 26 11:44:57 2014 -0400
Switch to using Sequel syntax for #tables
commit
6e7af92f6d8b22ee37a1cc8e667af8bccc697d14
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Thu Jun 26 11:01:37 2014 -0400
Support getting the list of tables
601 -> 603 examples
61 -> 61 failures
commit
3f8ed6e8f0be888ec5cbde46c8e54dde5685565a
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Thu Jun 26 10:29:57 2014 -0400
FDBSQL does not support savepoints
commit
47a06425647924d09e5c3ccac032c12944c52e6b
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Thu Jun 26 10:26:47 2014 -0400
TODO later prepared transactions
commit
2a810a89af75ea4712b794eb6592af1b61f8cb0f
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Thu Jun 26 10:23:32 2014 -0400
We do not support partial indexes
and a couple TODOs to go back to
commit
41de4e9eaa2d7f48acb683f79967e9468d205507
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Wed Jun 25 17:37:46 2014 -0400
We support foreign key deferrable constraints
Also transactions handle errors on commits correctly
600 -> 601 examples
61 -> 61 failures
commit
e51eb237fe5abc64ea610d1f1fd01ff4a509d03c
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Wed Jun 25 16:26:48 2014 -0400
We don't support any kind of deferrable constraint
At least the parser fails, it does list it in the schema table, but
I found no evidence that we actually support making a constraint
deferrable
commit
f10948c66d70275ca9a41f61b5fc05de249969ec
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Wed Jun 25 16:01:16 2014 -0400
Split Supports methods into Features module
commit
dba55a09039fb00636941814c5dd946b97013e0d
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Wed Jun 25 15:56:28 2014 -0400
Explicitly don't support deferred constraints
commit
f4d020f4b61f34a5de295f06f9421dd50772eca1
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Wed Jun 25 15:53:11 2014 -0400
fdbsql supports CREATE TABLE IF NOT EXISTS
commit
178f7f4f8c6bdd78b3d5ea29c73d2e6733c85a59
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Wed Jun 25 15:52:55 2014 -0400
Fdbsql does not have a global index namespace
commit
a59c694fd7a55fff4fb2c20916729de295ac9226
Merge:
3db5c12 57fc8d1
Author: Nathan Williams <nathanlws@gmail.com>
Date: Tue Jun 17 17:17:05 2014 -0400
Merge pull request #1 from ScottDugas/tests
Mostly implemented foundationdb adapter
commit
57fc8d1be4ed670b8f390374c3c3131488c9111e
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Tue Jun 17 10:47:20 2014 -0400
Removed stale comment
commit
a43262a8b82f350de8940e2173e04e19968d630f
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Tue Jun 17 10:37:36 2014 -0400
Cleaned up error class conversion code
Some of the fallback regex's weren't correct or relevant
commit
eec77bc0ee1f0706e83b211c17223e31740cb3e9
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Tue Jun 17 09:28:47 2014 -0400
Removed commented out code
commit
75a6b69612d3d725fad6de6e74821ddb3ab57f42
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Mon Jun 16 17:00:56 2014 -0400
a bit of comment cleanup
and whitespace
commit
5e42e9dc401ff05196d7886b4484612007731f53
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Mon Jun 16 16:58:52 2014 -0400
descriptions in the Rakefile
commit
893b6c47da81aa3cf898f0c73f9e17855f9f6c87
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Mon Jun 16 16:57:55 2014 -0400
doc isn't in the spec directory
commit
22280a7a797da2631908fc49a21787b4a2609675
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Mon Jun 16 16:57:09 2014 -0400
Updated expected failures
just in case someone comes along and runs the tests
commit
d26150fda499097a1e805cc955262e9c83060976
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Mon Jun 16 16:55:59 2014 -0400
There is no stable version yet
thus I removed it from the readme
commit
55760cb4e56567efebdb93f4e6f12c9c71412d77
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Mon Jun 16 16:46:12 2014 -0400
ADded specs for schema parsing
these are the cases that I thought looked a bit risky
commit
6fc444dad53024d0f7df4d7973ce0266de567a01
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Mon Jun 16 16:09:09 2014 -0400
Cleaned up spec a bit
commit
ac6d6de18122c0a18d09262809d09ac8f1d5cb2c
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Mon Jun 16 16:06:54 2014 -0400
Only need remove_transaction
Due to some testing I discovered overriding commit_transaction
and rollback_transaction were unnecessary
commit
04ff5a59321ea917c3468c4371e8a628498fa4f0
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Mon Jun 16 15:52:53 2014 -0400
Added regular spec step to unit test instructions
commit
2120bd4278a5b35273e641e92e3f4701bfbfa9a3
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Mon Jun 16 15:50:30 2014 -0400
Moved not committed retries to connection
because transactions don't actually use the database, it doesn't
really make sense for not committed errors to be on the db
this makes it more consitent and a little clearer what's going on
commit
87ff1182f570971039257733f7bb2b4779b96fb7
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Mon Jun 16 11:35:11 2014 -0400
Added quick start to README
commit
41ee5f3fe8d4dc9a091ebff38b87ce720dd23578
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Mon Jun 16 11:25:05 2014 -0400
Bump require sql layer version
there's a bunch of bugs that definitely won't be fixed until 1.9.6
commit
4ce9e6c4c797bbe3db8b34e0e856df426ba1c61a
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Mon Jun 16 11:17:44 2014 -0400
append WITH DATA for create table as select
We require WITH DATA or WITH NO DATA.
600 -> 600 examples
66 -> 66 failures
commit
013109fcd26b8623c95cbd91163b01d958174845
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Mon Jun 16 11:12:32 2014 -0400
Retry not_committed autocommit statements
transactions still have to be handled by the user, but if it's a
single autocommit statement, we retry 10 times to get it to work
600 -> 600 examples
89 -> 66 failures
commit
bd02684c65e27b0709ecebf84969883d050b1702
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Fri Jun 13 17:04:28 2014 -0400
Override date arithmetic adding support for fdbsql
We have to create our own extension, and make sure it's loaded after
the builtin one.
600 -> 600 examples
91 -> 89 failures
commit
0783e130ccac7491a65e4f4d05c6e8a234aeb13f
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Fri Jun 13 14:35:14 2014 -0400
FDBSQL does not support usecs in the timestamps
only whole seconds here.
600 -> 600 examples
94 -> 91 failures
commit
7eb99ec6b905c56bf38023ca1bd3b9cef3d9a646
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Fri Jun 13 14:29:51 2014 -0400
Support for application timezone
The application can have a timezone that's different from the db
so we need to convert back into the application's timezone when
reading out.
600 -> 600 examples
98 -> 94 failures
commit
cfd056662aad088c23da5f3c862a2d67e8eb4a3e
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Fri Jun 13 13:36:13 2014 -0400
Override alter_table_op_sql for fdbsql
this makes alter column work in a couple more instances
600 -> 600 examples
101 -> 98 failures
commit
79ff252a2af6bbec5383b2188ba62b5b94f18e49
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Fri Jun 13 12:04:38 2014 -0400
More correct schema parsing
It was having problems if there were multiple constraints on a column
600 -> 600 examples
104 -> 101 failures
commit
9ec916616422259fef17657cd30ae66db2cee7c0
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Fri Jun 13 10:26:09 2014 -0400
If a decimal has 0 scale, treat it as a ruby int
0 scale means there's nothing after the decimal point
600 -> 600 examples
105 -> 104 failures
commit
e26f186c6c331ea3853dfee240c1d3ce0ae199a6
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Thu Jun 12 17:33:21 2014 -0400
Don't expect quotes on default string values
fdbsql just returns the string value, not a quoted string value
so we don't need to normalize like those other dbs
600 -> 600 examples
106 -> 105 failures
commit
403eb0b2b4c96f8fa6756c62fcf65c3ccb53dbf3
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Thu Jun 12 17:05:25 2014 -0400
Support input/output identifier methods
I'm not entirely sure why these exist, but the tests pass, and
someone at sequel wanted them
600 -> 600 examples
108 -> 106 failures
commit
0e748dc46528343978ab822e5820c49479465ea2
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Thu Jun 12 16:39:42 2014 -0400
convert is_nullable from YES/NO to boolean
600 -> 600 examples
110 -> 108 failures
commit
765ab00fe51994dad3f4e45bb745ba337a765e73
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Thu Jun 12 16:36:07 2014 -0400
Encode blob literals as hex strings
600 -> 600 examples
112 -> 110 failures
commit
750f71b5cebd9dd42a41f83ef277e7cd3f334cd6
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Thu Jun 12 16:22:07 2014 -0400
replace infix bitwise operators with functions
Now the bitwise stuff in the dsl works.
600 -> 600 examples
117 -> 112
commit
e1403b744926ce979afdac24e3861fa9a7eacb11
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Thu Jun 12 15:39:44 2014 -0400
Return primary keys when parsing schema too
Postgres does, and apparently it's expected.
600 -> 600 examples
123 -> 117 failures
commit
7f5cb5cab9d3d64bb84b599f6b7064b18d894242
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Thu Jun 12 13:32:02 2014 -0400
Created custom table generator for not null PK
FDBSQL doesn't automatically add NOT NULL to columns marked as a
primary key; it just throws an error. FDBSQL should be changed, but
in the meantime a custom generator is needed for composite primary
keys.
600 -> 600 examples
173 -> 123 failures
commit
8d847c86588f3f5b7237d61fdc8c3aedbc4e0352
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Thu Jun 12 10:24:24 2014 -0400
Set not null implicitly if primary key is set
Every other db allows you to just say PRIMARY KEY without specifying
NOT NULL. There's a trello card to make fdbsql do the same, but
for now we need to explicitly set the NOT NULL. This is directly
necessary to make the TimestampMigrator work.
600 -> 600 examples
206 -> 173 failures
commit
f4d8636138c909cf14e2eed5b87f18e6b58d4590
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Wed Jun 11 16:40:57 2014 -0400
Run specs in the sequel path
We need to change to the sequel gem path before running the specs
so that the migration specs can find the migration files
600 -> 600 examples
210 -> 206 failures
commit
b8b2db1d267efafe27eeb5081a9256f22d2063c2
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Wed Jun 11 16:17:21 2014 -0400
Consider "true" to be true, not "t"
fdbsql uses "true" to represent true, but PG_TYPES uses "t"
600 -> 600 examples
214 -> 210 failures
commit
8a33c40a4068f495e3446caff113575688be6730
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Wed Jun 11 15:25:03 2014 -0400
Added support for delete and update returning
600 -> 600 examples
215 -> 214 failures
commit
d0cef73c252e5673d6b089013120a78b1a99dab1
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Wed Jun 11 14:38:09 2014 -0400
Changed FOR UPDATE to not be inserted
FOR UPDATE doesn't apply to our transaction model, so it can just
not be inserted; everything will still work.
600 -> 600 examples
217 -> 215 failures
commit
86eb2a15e06c2c3e7dfdde42dc39a7d615515c8e
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Wed Jun 11 11:58:48 2014 -0400
Moved dataset into it's own file
commit
c5ad1ed02fcdea51dc9c28eb85b706d424fc1d09
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Wed Jun 11 11:41:28 2014 -0400
return primary key on insertions
This requires us to get and cache the primary keys.
600 -> 600 examples
223 -> 217 failures
commit
3b86683eebadf295ac79ef8c930be3f2af5d9b59
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Tue Jun 10 17:11:43 2014 -0400
Removed outdated comment
commit
7e9aa78c1c9e00d9ecd8a2ab398a0f1fcc833b60
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Tue Jun 10 12:44:25 2014 -0400
Use sql states for exception types
the regexes are still there, but only as a weird backup.
Postgres does both, so I followed suit.
600 -> 600 examples
224 -> 223 failures
commit
e9d57562b0b24f7461daf71889e83562856e0514
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Tue Jun 10 12:44:25 2014 -0400
use correct regex for foreign key constraint
The failing tests were flopping between 225 and 224, hopefully they
stopped, but I fixed a spec
600 -> 600 examples
224 -> 224 failures
commit
909737b690d649bdca8bbd0fdfce76be7a9032aa
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Mon Jun 9 16:22:34 2014 -0400
Convert exception for constraint violations
The list of regexps is copied from postgres; I only updated the
one for the test I was dealing with to work with fdbsql's slightly
different messages.
600 -> 600 examples
228 -> 224 failures
commit
482aea64e3a6a58aab9ed4dcecf404f9f0acf70d
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Mon Jun 9 16:22:34 2014 -0400
Check disconnect errors at connection level
Other db errors are still caught at the database level.
This fixed the following test, but I guess broke something else,
I don't have things set up for good tracking of regressions...
Sequel::Database should provide ability to check connections for validity
600 -> 600 examples
228 -> 228 failures
commit
4020e65ba114233a26139480adcf79daab0b5700
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Mon Jun 9 16:22:34 2014 -0400
Swallow exceptions in Connection.close
This is what postgres does, and allows close to be called multiple times
without throwing an exception
600 -> 600 examples
230 -> 228 failures
commit
ab13edd2ead74767c8ba1547aadfdd5b96fe6458
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Mon Jun 9 16:22:34 2014 -0400
Wrap exceptions in sequel exception type
Wraps all PGError exceptions thrown from execute, just like postgres
600 -> 600 examples
238 -> 230 failures
commit
6b267391dbc16fd898becbca1040cfaac6d8d2c1
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Mon Jun 9 16:22:34 2014 -0400
Removed custom implementation of columns
Now that we have a correct implementation of schema parsing, this
is no longer needed, and we can just use the base implementation of
columns
600 -> 600 examples
238 -> 238 failures
commit
8c0bef115e12104cc98b09ad6e385ca97a5e095e
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Mon Jun 9 15:47:05 2014 -0400
Use correct schema in schema parsing
It needs to default to "CURRENT_SCHEMA", not ""CURRENT_SCHEMA"" or
"'CURRENT_SCHEMA'" or "`CURRENT_SCHEMA`". This is why one of the
tests kept complaining about a 'tags.taggings_count' column which
clearly didn't exist; it existed on a tags table in another schema.
Good thing I've been using this db for other tests.
600 -> 600 examples
254 -> 238 failures
commit
f1f54d43f11e42f036c08c57f5bc4845fa7b5e90
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Mon Jun 9 14:20:25 2014 -0400
Fixed naming conflict with instance variable
I don't know where, or what was setting @columns, but it was being
set to more than the actual column names.
This might have introduced a new problem, because some of the tests
might be failing for not having all the column names they need...
600 -> 600 examples
273 -> 254 failures
commit
88924592acc8d7a10e3fd5a63412d43d80b17645
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Mon Jun 9 12:22:16 2014 -0400
Convert result values to ruby types
This uses the PG_TYPES list of converter methods to make various
result values there actual ruby types (e.g. int)
600 -> 600 examples
458 -> 273 failures
commit
e42bd2f11b1983541a324c70a6e6abb5f7251e68
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Mon Jun 9 11:05:57 2014 -0400
Return res.tuples (count of updates)
This brought one test forward, and fixed a buncgh of others
the yield value is still the PG::Result
600 -> 600 examples
487 -> 458 failures
commit
5191b58313a724a86c6937e345d1400952413610
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Mon Jun 9 10:39:18 2014 -0400
Added Connection.execute
This causes the following test to pass
Sequel::Model Simple Associations should handle eager loading
limited associations for many objects
600 -> 600 examples
504 -> 487 failing
commit
a321199da1767e65f16769adc35cd5f578a447d0
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Mon Jun 9 10:31:54 2014 -0400
Added support for Insert Returning
598 -> 600 examples run
535 -> 504 failures
commit
a1d40863bd6a29dc1a1fa62502a7a4ba1052e3d1
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Fri Jun 6 14:06:52 2014 -0400
Use serial type instead of autoincrement
good for creating primary keys
commit
792b7543983e3b51cd3ceb728998778750c36a65
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Fri Jun 6 12:42:56 2014 -0400
Removed regex filtering out sql statements
commit
2d0ea1f34df4d08c7551ff27444658d4c466a432
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Fri Jun 6 11:20:03 2014 -0400
Added WARN: DROP_TABLE IF EXISTS note
People might get worried about all the WARN lines printed out in
the test output
commit
7fe09b4737b142f2eef124ed91f0fe6aea3343a9
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Fri Jun 6 10:51:41 2014 -0400
Successfully create tables
This passes the test:
Database schema modifiers should create tables correctly
and a bunch of others, so now 57 tests are passing
was 5
commit
693162e8aa6f35db94db026afcce18c75e1f3695
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Fri Jun 6 09:45:17 2014 -0400
Updated comment to be more relevant
commit
8eee2f5a3243df44173b9fcc4480a11349d33b55
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Thu Jun 5 16:56:54 2014 -0400
Almost parse schema table, rows need to be symbols
commit
4598fd306d7337365348907aba4970546508d212
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Thu Jun 5 11:56:54 2014 -0400
Restrict to not use 2.99.0
it seems like that's basically 3.0.0, so I'm a bit cautious of using it
commit
3aa252dd9c50f1fb2cde0246e19a833378d16f84
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Thu Jun 5 10:20:51 2014 -0400
DROP TABLE IF EXISTS works
commit
e5305dbcd2027532e1ee8e525a0422a0fbd69bc9
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Thu Jun 5 08:59:37 2014 -0400
Actually use a pg connection that's for real
I checked, and it complained that the server wasn't running,
and failed test, then passed the tests when I started the sql-layer
commit
fffb30453c9ed0beec3b731a4cfb1c1e32a18f98
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Thu Jun 5 08:34:47 2014 -0400
Added vacuous connection object
commit
873b8c53efdc05853d93092f2335d7d19c78c1d1
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Thu Jun 5 07:55:47 2014 -0400
"Pass" drop_table :if_exists (but still not real)
drop_table? just prints drop_table was called, meaning there should
be substantially less errors
commit
f0cd1335671df6e83214caeb8c2fe00efe4c3a20
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Thu Jun 5 07:55:01 2014 -0400
Require the lib folder; don't use the gem
so that you test the current code, not the last packaged code
commit
c8fac55cf4f5d3f193fd4c80da7c59f5216379ce
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Wed Jun 4 17:52:55 2014 -0400
Added initial docs for running tests
commit
4fb531b418309f4172e9a2e61f60f74274023eae
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Wed Jun 4 17:45:23 2014 -0400
Fail if integration uri isn't fdbsql://
Because that's not useful, you could just run the integration specs
in sequel
commit
a1136446e969b033ad6ee518b57a71f3d37f2cdc
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Wed Jun 4 17:41:54 2014 -0400
rspec integration in rake file
These run all the integration tests from sequel against fdbsql
commit
3db5c12a731f75989a85eb013a15b8935d2607a0
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Wed Jun 4 11:53:07 2014 -0400
Vacuous execute method
Apparently Sequel doesn't try to connect until you try to do something
commit
274f23b2d572f12d9b8121f03cf6794c267d829f
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Wed Jun 4 10:49:24 2014 -0400
add fdbsql schema
this adds it to the adapter map so that sequel doesn't throw an
exception
commit
33af57ae951ac1f18884e8016878d03070330e14
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Wed Jun 4 10:47:13 2014 -0400
Require sequel in main ruby file
Just a little more robust, if you put require 'sql-fdbsql-adapter'
before require 'sequel' it won't crash
commit
a402bd65e972e4dc65d92cdf55e89ee01032a4a6
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Wed Jun 4 10:43:40 2014 -0400
Renamed fdbsql_adapter to fdbsql
Sequel expects the name to be the same as the protocol
commit
29b0ea16ae71fa90122402a43fdb5fbc0cd7f656
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Wed Jun 4 10:38:49 2014 -0400
Use lowercase sequel gem name
commit
43b902ea2e48a8b9540d3dcdfd264d0a3da26308
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Wed Jun 4 10:37:12 2014 -0400
Made sequel dependency less specific
gem build gave a warning that it was overly strict
commit
54ec92ef952bedef4b4070804124b4999ad363ee
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Wed Jun 4 10:34:06 2014 -0400
Added pointless adapter shell
commit
32896768d3e000800380e3b6aa3ab7cab1543550
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Wed Jun 4 10:05:59 2014 -0400
Added Gemfile,gemspec, VERSION
gemfile uses gemspec to get dependencies, gemspec uses VERSION for
the version
commit
d70e9b2e3c7936bc2d638d58cb4cea29337963f8
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Wed Jun 4 09:51:17 2014 -0400
Initial pass of README.md
mostly this was copied from activerecord. Quick Start needs lots of
flushing out
commit
9f535546950a531ba4bc6f7f7bd2d9cea6047d47
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Wed Jun 4 09:41:07 2014 -0400
Copied License from activerecord adapter
commit
7b4ea01776eef158638ed05bf92d44309fa36323
Author: Scott Dugas <scott.dugas@foundationdb.com>
Date: Wed Jun 4 09:37:54 2014 -0400
Initial commit with default ruby gitignore
This is taken from github's suggested Ruby.gitignore
Work around bug in old versions of MySQL when schema dumping a table with multiple timestamp columns (Fixes #882)
On MySQL, old versions of MySQL complain if you create a table
with multiple timestamp columns unless NULL is explicitly specified
(usually not needed in SQL as it is the default). On MySQL, when
schema dumping a timestamp column in :same_db mode, explicitly
set :null=>true. This will be overridden later to be :null=>false
if the column is actually NOT NULL.
This is only done in :same_db mode, as other databases don't have
this issue.
Note that this problem doesn't affect MySQL 5.6, but does affect
MySQL 5.1 and MariaDB 10.0.13.
Support more array types by default in the pg_array extension, such as xml[] and uuid[]
This isn't comprehensive support, but it supports the most common
simple array types that weren't supported. The remaining unsupported
types probably don't make sense to support as the scalar types
aren't readily usable. For example, the geometric array types
should really be supported in a geometric extension that
adds support for both the scalar and array types, similar to the
other pg_* types.
Add Sequel::Model.cache_associations accessor, which can be set to false to not cache association metadata
This makes it easier to use Sequel in an environment where code
is being reloaded and classes are being unloaded. By default,
if you do:
Album.many_to_one :artist
Album[1].artist
Sequel will cache certain information, such as the class is Artist.
Let's say you later unload the Artist class and reload it. Sequel
will still use the reference to the previous class, missing any
changes added by the code reloading (for example if you changed
the default dataset for the Artist class).
With this change, you can do:
Sequel::Model.cache_associations = false
and Sequel will not cache association metadata. Instead, it will
recompute it every call.
To make sure this doesn't have negative effects on Sequel as a
whole, you can set the SEQUEL_NO_CACHE_ASSOCIATIONS environment
variable when testing, and it will automatically set
cache_associations to false when testing.
The only fallout from this change is that reciprocal_type for
many_to_one associations now needs access to the associated class
if not cached, so when caching is disabled, if there isn't a
single associated class (such as when using manually creating a
custom polymorphic association), you should manually set the
:reciprocal_type option.
Add split_values plugin, for moving noncolumn entries from the values hash into a separate hash (Fixes #868)
I don't recommend usage of this plugin by default, since it hurts
performance, but if you want to be able to add additional selected
expressions when retrieving model objects, and later save those
objects or compare them to other objects without the additional
expressions, this will allow you to do so.
Raise original exception if there is an exception raised when rolling back transaction/savepoint
It doesn't make sense to swallow the original exception and raise
the exception raised by the rollback code, as the original
exception is the more important of the two.
Allow more types as filter expressions, only specifically disallow Numeric/String expressions
Previously, if a type wasn't recognized, it wasn't allowed. This
allows you to to use unrecognized types. Now, such types may blow
up later during literalization if they can't be literalized, but
this allows you to create your own types and use them.
Previously, you could work around this issue by using a placeholder
string:
where('?', object)
Now you can just use the object directly:
where(object)
Remove objects from cached association array at time of nested_attributes call instead of waiting until save
We add the objects to the cached association array at time of
call if we are creating them, so for consistency, we should delete
them from the cached association array at time of call if we are
deleting/removing them. Issue pointed out by DaVinci on the Google
Group.
Handle composite primary keys when working around validation issues for one_to_(one|many) associations in nested_attributes plugin (Fixes #870)
When a model uses a composite primary key, pk is never nil. The
previous code resulted in the foreign key in the associated object
getting set to an array, which could make validation of the
associated object fail. This uses the 0 value temporarily in the
composite primary key case, just as it is used in the simple
primary key case.
Add documentation note about using symbols for column names on MySQL for certain schema changes
MySQL doesn't have the ability to change the column type, default,
or NULL/NOT NULL setting indepdently, it just has a CHANGE COLUMN
syntax that combines all three settings. Sequel attempts to parse
the existing values from the schema, but that isn't going to work
unless the column is given as a symbol, since the schema hash is
keyed with a symbol.
Add note about using Model#refresh to get all values in class_table_inheritance plugin
Also add a spec to ensure it doesn't break.