diff options
author | Ralph Amissah <ralph@amissah.com> | 2008-12-17 20:57:46 -0500 |
---|---|---|
committer | Ralph Amissah <ralph@amissah.com> | 2008-12-20 22:54:44 -0500 |
commit | 2f97cf3f9e13280da9d161d39b8d9b0d66555307 (patch) | |
tree | 07ee35d65bb4d79fc69ccbc7595c08e8635928be /lib/sisu/v0/dbi.rb | |
parent | html & css cosmetic changes (index & concordance), run "sisu -CC"; changelog (diff) |
SiSU's sqlite module still broken for the time being: inconsistent ruby dbi api
for sqlite3, (unable to begin and commit transaction) provide explicit message
problem noted already in v.0.66.2 (2008-04) and last in v.0.66.3 (2008-05)
module (& rb dbi) apparently worked at end 2007 (v.0.62.4) and start of 2008
(v.0.64.0) ... (did not expect broken state to last, sorry)
include maintenance mode info with -M flag
Diffstat (limited to 'lib/sisu/v0/dbi.rb')
-rw-r--r-- | lib/sisu/v0/dbi.rb | 20 |
1 files changed, 16 insertions, 4 deletions
diff --git a/lib/sisu/v0/dbi.rb b/lib/sisu/v0/dbi.rb index 1f161724..9576fa74 100644 --- a/lib/sisu/v0/dbi.rb +++ b/lib/sisu/v0/dbi.rb @@ -64,7 +64,7 @@ module SiSU_DBI include SiSU_Screen require "#{SiSU_lib}/param" include SiSU_Param - require "#{SiSU_lib}/db_dbi" + require "#{SiSU_lib}/db_dbi" # db_dbi.rb include SiSU_DB_DBI require "#{SiSU_lib}/shared_html_lite" include SiSU_Format_Shared @@ -74,23 +74,35 @@ module SiSU_DBI @opt=opt @db=SiSU_Env::Info_db.new if @opt.cmd =~/d/i \ - or @opt.mod.inspect =~/--pg(?:sql)?|(?:sq)?lite/ + or @opt.mod.inspect =~/--(pg(?:sql)?|(?:sq)?lite)/ @sql_type=if @opt.cmd=~/D/ \ or @opt.mod.inspect =~/--pg(?:sql)?/ + maintenance_check(@opt,__FILE__,__LINE__) if @opt.cmd.inspect =~/M/ 'pg' elsif @opt.cmd =~/d/ \ and @opt.mod.inspect =~/--(?:db[=-])?pg(?:sql)?/ + maintenance_check(@opt,__FILE__,__LINE__) if @opt.cmd.inspect =~/M/ 'pg' - elsif @opt.mod.inspect =~/--(?:sq)?lite/ + elsif @opt.cmd=~/d/ \ + or @opt.mod.inspect =~/--(?:sq)?lite/ + maintenance_check(@opt,__FILE__,__LINE__) if @opt.cmd.inspect =~/M/ 'sqlite' elsif @opt.cmd =~/d/ \ and @opt.mod.inspect =~/--(?:db[=-])?(?:sq)?lite/ + maintenance_check(@opt,__FILE__,__LINE__) if @opt.cmd.inspect =~/M/ 'sqlite' #elsif @opt.cmd =~/d/ and @opt.mod.select =~/--my(?:sql)?/; 'mysql' - else 'sqlite' + else + maintenance_check(@opt,__FILE__,__LINE__) if @opt.cmd.inspect =~/M/ + 'sqlite' end end end + def maintenance_check(opt,file,line) + p opt.mod + p opt.cmd + p "at #{file} #{line}" + end def read_psql begin db,user,dbi,pass=@db.psql.db,@db.psql.user,@db.psql.dbi,@db.psql.password |