couchdb-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Paul Davis <paul.joseph.da...@gmail.com>
Subject Re: Error compacting a database on Windows
Date Thu, 03 Dec 2009 22:25:15 GMT
On Thu, Dec 3, 2009 at 4:56 PM, ujay68 <ujay68@gmail.com> wrote:
> Hi,
>
> I'm testing CouchDB on Windows XP with the installer from
> http://people.apache.org/~mhammond/dist/0.10.0/
>
> When I try to compact a database (about 7.000 documents, about 40 MB)
> I get this error on the console:
>
> Any idea what's going on here? Quering the database seems to work.
>
> CouchDB 0.10.0 - prepare to relax...
> Eshell V5.7.2  (abort with ^G)
> 1> Apache CouchDB 0.10.0 (LogLevel=info) is starting.
> 1> Apache CouchDB has started. Time to relax.
> 1> [info] [<0.1.0>] Apache CouchDB has started on http://127.0.0.1:5984/
> 1> [info] [<0.62.0>] 127.0.0.1 - - 'GET' / 200
> 1> [info] [<0.58.0>] 127.0.0.1 - - 'GET' /_all_dbs 200
> 1> [info] [<0.58.0>] 127.0.0.1 - - 'GET' /test/ 200
> 1> [info] [<0.62.0>] 127.0.0.1 - - 'GET' /tst/ 200
> 1> [info] [<0.63.0>] 127.0.0.1 - - 'GET' /_config/query_servers/ 200
> 1> [info] [<0.62.0>] 127.0.0.1 - - 'GET' /tst/_all_docs?startkey=%22_design%2F%2
> 2&endkey=%22_design0%22&include_docs=true 200
> 1> [info] [<0.63.0>] 127.0.0.1 - - 'GET' / 200
> 1> [info] [<0.58.0>] 127.0.0.1 - - 'GET' /tst/_all_docs?limit=101 200
> 1> [info] [<0.63.0>] 127.0.0.1 - - 'GET' /_config/native_query_servers/ 200
> 1> [info] [<0.58.0>] 127.0.0.1 - - 'POST' /tst/_compact 202
> 1> [info] [<0.74.0>] Starting compaction for db "tst"
> 1> [error] [<0.74.0>] ** Generic server <0.74.0> terminating
> ** Last message in was {'$gen_cast',
>                           {compact_done,
>                               "../var/lib/couchdb/tst.couch.compact"}}
> ** When Server state == {db,<0.73.0>,<0.74.0>,<0.82.0>,<<"1259360291687000">>,
>                            <0.71.0>,<0.75.0>,
>                            {db_header,4,7098,0,
>                                {38242271,{7096,1}},
>                                {38244115,7097},
>                                nil,0,nil,nil,1000},
>                            7098,
>                            {btree,<0.71.0>,
>                                {38242271,{7096,1}},
>                                #Fun<couch_db_updater.8.117532479>,
>                                #Fun<couch_db_updater.9.105507025>,
>                                #Fun<couch_db_updater.7.32442936>,
>                                #Fun<couch_db_updater.10.43662179>},
>                            {btree,<0.71.0>,
>                                {38244115,7097},
>                                #Fun<couch_db_updater.11.41695917>,
>                                #Fun<couch_db_updater.12.6934644>,
>                                #Fun<couch_btree.5.124754102>,
>                                #Fun<couch_db_updater.13.28245598>},
>                            {btree,<0.71.0>,nil,#Fun<couch_btree.0.83553141>,
>                                #Fun<couch_btree.1.30790806>,
>                                #Fun<couch_btree.2.124754102>,nil},
>                            7098,<<"tst">>,"../var/lib/couchdb/tst.couch",[],
>                            [],nil,
>                            {user_ctx,null,[]},
>                            nil,1000,
>                            [before_header,after_header,on_file_open]}
> ** Reason for termination ==
> ** {{badmatch,{error,eacces}},
>    [{couch_db_updater,handle_cast,2},
>     {gen_server,handle_msg,5},
>     {proc_lib,init_p_do_apply,3}]}
>
> 1>
> =ERROR REPORT==== 27-Nov-2009::23:18:16 ===
> ** Generic server <0.74.0> terminating
> ** Last message in was {'$gen_cast',
>                           {compact_done,
>                               "../var/lib/couchdb/tst.couch.compact"}}
> ** When Server state == {db,<0.73.0>,<0.74.0>,<0.82.0>,<<"1259360291687000">>,
>                            <0.71.0>,<0.75.0>,
>                            {db_header,4,7098,0,
>                                {38242271,{7096,1}},
>                                {38244115,7097},
>                                nil,0,nil,nil,1000},
>                            7098,
>                            {btree,<0.71.0>,
>                                {38242271,{7096,1}},
>                                #Fun<couch_db_updater.8.117532479>,
>                                #Fun<couch_db_updater.9.105507025>,
>                                #Fun<couch_db_updater.7.32442936>,
>                                #Fun<couch_db_updater.10.43662179>},
>                            {btree,<0.71.0>,
>                                {38244115,7097},
>                                #Fun<couch_db_updater.11.41695917>,
>                                #Fun<couch_db_updater.12.6934644>,
>                                #Fun<couch_btree.5.124754102>,
>                                #Fun<couch_db_updater.13.28245598>},
>                            {btree,<0.71.0>,nil,#Fun<couch_btree.0.83553141>,
>                                #Fun<couch_btree.1.30790806>,
>                                #Fun<couch_btree.2.124754102>,nil},
>                            7098,<<"tst">>,"../var/lib/couchdb/tst.couch",[],
>                            [],nil,
>                            {user_ctx,null,[]},
>                            nil,1000,
>                            [before_header,after_header,on_file_open]}
> ** Reason for termination ==
> ** {{badmatch,{error,eacces}},
>    [{couch_db_updater,handle_cast,2},
>     {gen_server,handle_msg,5},
>     {proc_lib,init_p_do_apply,3}]}
> 1> [error] [<0.74.0>] {error_report,<0.24.0>,
>              {<0.74.0>,crash_report,
>               [[{initial_call,{couch_db_updater,init,['Argument__1']}},
>                 {pid,<0.74.0>},
>                 {registered_name,[]},
>                 {error_info,{exit,{{badmatch,{error,eacces}},
>                                    [{couch_db_updater,handle_cast,2},
>                                     {gen_server,handle_msg,5},
>                                     {proc_lib,init_p_do_apply,3}]},
>                                   [{gen_server,terminate,6},
>                                    {proc_lib,init_p_do_apply,3}]}},
>                 {ancestors,[<0.73.0>,couch_server,couch_primary_services,
>                             couch_server_sup,<0.1.0>]},
>                 {messages,[]},
>                 {links,[<0.73.0>]},
>                 {dictionary,[]},
>                 {trap_exit,false},
>                 {status,running},
>                 {heap_size,987},
>                 {stack_size,24},
>                 {reductions,1884}],
>                []]}}
> 1>
>
> Thanks,
>
> Jay
>

Jay,

This is a known issue in how database compaction works. On Unix we can
unlink an open file and replace it with the compacted version. Windows
has different semantics that disallow this approach. At some point we
hope to get this fixed, but to my knowledge no one has started writing
code for it.

Paul Davis

Mime
View raw message