wip
diff --git a/src/couch/src/couch_att.erl b/src/couch/src/couch_att.erl
index d329e44..c8b2665 100644
--- a/src/couch/src/couch_att.erl
+++ b/src/couch/src/couch_att.erl
@@ -395,7 +395,6 @@
 ->
     store(Extended, from_disk_term(StreamSrc, Base));
 from_disk_term(StreamSrc, {Name, Type, Sp, AttLen, DiskLen, RevPos, Md5, Enc, Generation}) ->
-    couch_log:error("~n from_disk_term-2 Generation: ~p~n", [Generation]),
     {ok, Stream} = open_stream(StreamSrc, Sp, Generation),
     #att{
         name = Name,
diff --git a/src/couch/src/couch_bt_engine.erl b/src/couch/src/couch_bt_engine.erl
index 766e18b..156d428 100644
--- a/src/couch/src/couch_bt_engine.erl
+++ b/src/couch/src/couch_bt_engine.erl
@@ -174,18 +174,18 @@
                         Header0
                 end
         end,
-
+    couch_log:error("~n bt_engine:init() Header: ~p~n", [Header]),
     Generations = couch_bt_engine_header:generations(Header),
-
     Fds0 = maybe_open_generation_files(FilePath, Generations , Options),
     Fds = [Fd] ++ Fds0,
     {ok, init_state(FilePath, Fds, Header, Options)}.
 
 maybe_open_generation_files(FilePath, Generations, Options) ->
-    case lists:member(compacting, Options) of
-        true -> [];
-        false -> open_generation_files(FilePath, Generations, Options)
-    end.
+    NewGenerations = case lists:member(compacting, Options) of
+        true -> Generations;
+        false -> Generations + 1
+    end,
+    open_generation_files(FilePath, NewGenerations, Options).
 
 
 terminate(_Reason, St) ->
@@ -617,7 +617,6 @@
     {ok, {couch_bt_engine_stream, {St#st.fd, StreamSt}}}.
 
 open_read_stream(#st{} = St, Generation, StreamSt) ->
-    couch_log:error("~nopen_read_stream/3, St: ~p St.fds: ~p, Generation: ~p~n", [St, St#st.fds, Generation]),
     Fd = get_fd(St#st.fds, Generation),
     {ok, {couch_bt_engine_stream, {Fd, StreamSt}}}.
 
@@ -673,7 +672,8 @@
     {ok, St, Pid}.
 
 finish_compaction(OldState, DbName, Options, CompactFilePath) ->
-    {ok, NewState1} = ?MODULE:init(CompactFilePath, [compacting | Options]),
+    {ok, NewState1} = ?MODULE:init(CompactFilePath, [compaction | Options]),
+    couch_log:error("~n finish_compaction: OldState: ~p, NewState1: ~p~n", [OldState, NewState1]),
     OldSeq = get_update_seq(OldState),
     NewSeq = get_update_seq(NewState1),
     case OldSeq == NewSeq of
@@ -887,7 +887,6 @@
 open_generation_file(FilePath, Generation, Options) ->
     GenFilePath = string:replace(FilePath, ".couch",
         "." ++ integer_to_list(Generation)++ ".couch", trailing),
-    couch_log:error("~n open_generation_file(FilePath: ~p) GenFilePath: ~p~n", [FilePath, GenFilePath]),
     case catch open_db_file(GenFilePath, [nologifmissing | Options]) of
         {ok, Db} ->
             Db;
@@ -1279,6 +1278,8 @@
     OldFds = OldSt#st.fds,
     Fds = open_missing_generation_files(FilePath, OldFds),
 
+    couch_log:error("~n finish_compaction_int() OldSt: ~p, NewSt1: ~p, OldFds: ~p, Fds: ~p~n", [OldSt, NewSt1, OldFds, Fds]),
+
     % We're finished with our old state
     decref(OldSt),
 
@@ -1288,7 +1289,6 @@
         filepath = FilePath,
         fds = Fds
     },
-    couch_log:error("~n fninish_compaction_int NewSt2: ~p OldFDs ~p, Fds ~p~n", [NewSt3, OldFds, Fds]),
 
     {ok,
         NewSt3,
diff --git a/src/couch/src/couch_bt_engine_compactor.erl b/src/couch/src/couch_bt_engine_compactor.erl
index f31c055..ed3d025 100644
--- a/src/couch/src/couch_bt_engine_compactor.erl
+++ b/src/couch/src/couch_bt_engine_compactor.erl
@@ -25,7 +25,8 @@
     old_st,
     new_st,
     meta_fd,
-    retry
+    retry,
+    generation = 0
 }).
 
 -record(comp_header, {
@@ -53,6 +54,7 @@
 start(#st{} = St, DbName, Options, Parent) ->
     erlang:put(io_priority, {db_compact, DbName}),
     couch_log:debug("Compaction process spawned for db \"~s\"", [DbName]),
+    couch_log:error("Compaction process spawned for db \"~s\"", [DbName]),
 
     couch_db_engine:trigger_on_compact(DbName),
 
@@ -91,6 +93,7 @@
     gen_server:cast(Parent, Msg).
 
 open_compaction_files(DbName, OldSt, Options) ->
+    couch_log:error("~n compactor: open_compaction_files(DbName: ~p)~n", [DbName]),
     #st{
         filepath = DbFilePath,
         header = SrcHdr
@@ -141,7 +144,7 @@
                 ok = reset_compaction_file(MetaFd, Header),
                 Generations0 = couch_bt_engine_header:generations(Header),
                 Generations = increment_generation(Generations0),
-                % we need one more generation to compact into, maybe
+                % we need one more generation to compact into
                 GenFds = couch_bt_engine:open_generation_files(DbFilePath, Generations, Options),
                 Fds = [DataFd] ++ GenFds,
                 St0 = couch_bt_engine:init_state(DataFile, Fds, Header, Options),
@@ -156,7 +159,6 @@
         end,
     unlink(DataFd),
     erlang:monitor(process, MetaFd),
-    couch_log:error("~n open_compaction_files() CompSt: ~p~n", [CompSt]),
     {ok, CompSt}.
 
 copy_purge_info(#comp_st{} = CompSt) ->
@@ -408,7 +410,6 @@
     St.
 
 copy_docs(St, #st{} = NewSt, MixedInfos, Retry) ->
-    couch_log:error("~n~n copy_docs(St: ~p, NewSt: ~p~nn", [St, NewSt]),
     DocInfoIds = [Id || #doc_info{id = Id} <- MixedInfos],
     LookupResults = couch_btree:lookup(St#st.id_tree, DocInfoIds),
     % COUCHDB-968, make sure we prune duplicates during compaction
@@ -638,10 +639,10 @@
 compact_final_sync(#comp_st{new_st = St0} = CompSt) ->
     ?COMP_EVENT(before_final_sync),
     Generations = couch_bt_engine_header:generations(St0#st.header),
-    NewHeader = couch_bt_engine_header:set(St0#st.header, generations, increment_generation(Generations)),
+    NewGenerations = increment_generation(Generations),
+    NewHeader = couch_bt_engine_header:set(St0#st.header, generations, NewGenerations),
     St1 = St0#st{header = NewHeader},
     {ok, St2} = couch_bt_engine:commit_data(St1),
-    couch_log:error("~n compact_final_sync St0: ~p~n, St1: ~p~n, St3: ~p~n", [St0, St1, St2]),
     ?COMP_EVENT(after_final_sync),
     CompSt#comp_st{
         new_st = St2
diff --git a/src/couch/src/couch_db_updater.erl b/src/couch/src/couch_db_updater.erl
index fac5aee..ab2f979 100644
--- a/src/couch/src/couch_db_updater.erl
+++ b/src/couch/src/couch_db_updater.erl
@@ -153,6 +153,7 @@
             {noreply, Db, idle_limit()}
     end;
 handle_cast({compact_done, _Engine, CompactInfo}, #db{} = OldDb) ->
+    couch_log:error("~n handle_cast(compact_done) CompactInfo: ~pm OldDb: ~p~n", [CompactInfo, OldDb]),
     {ok, NewDb} = couch_db_engine:finish_compaction(OldDb, CompactInfo),
     {noreply, NewDb};
 handle_cast(wakeup, Db) ->
diff --git a/src/couch_pse_tests/src/cpse_test_get_set_props.erl b/src/couch_pse_tests/src/cpse_test_get_set_props.erl
index 773f1d0..6bb5e20 100644
--- a/src/couch_pse_tests/src/cpse_test_get_set_props.erl
+++ b/src/couch_pse_tests/src/cpse_test_get_set_props.erl
@@ -65,7 +65,6 @@
     cpse_util:shutdown_db(Db1),
 
     {ok, Db2} = couch_db:reopen(Db1),
-    couch_log:error("~n~n~n~n~s -> ~s~n~n", [couch_db:name(Db1), couch_db:name(Db2)]),
     ?assertEqual(?ADMIN_ONLY_SEC_PROPS, couch_db:get_security(Db2)).
 
 cpse_set_security(DbName) ->
diff --git a/t.sh b/t.sh
index 3334873..b66ac75 100755
--- a/t.sh
+++ b/t.sh
@@ -14,13 +14,13 @@
 sleep 5
 ls -lah dev/lib/node1/data/shards/00000000-ffffffff/
 
-$CURL $COUCH/asd/foo
-$CURL $COUCH/asd/bar/zomg
-ls -lah dev/lib/node1/data/shards/00000000-ffffffff/
-
-# TODO second compaction
-# $CURL -X POST -Hcontent-type:application/json $COUCH/asd/_compact
+# $CURL $COUCH/asd/foo
+# $CURL $COUCH/asd/bar/zomg
 # ls -lah dev/lib/node1/data/shards/00000000-ffffffff/
-# sleep 5
+
+# second compaction
+# $CURL -X POST -Hcontent-type:application/json $COUCH/asd/_compact
+# sleep 3
+# ls -lah dev/lib/node1/data/shards/00000000-ffffffff/
 
 # hexdump -C dev/lib/node1/data/shards/00000000-ffffffff/asd.*.couch
\ No newline at end of file