Hi, devs, The question: would it be theoretically possible to implement a partial rebuild, e.g.:
fossil rebuild tickets to just rebuild ticket-related data? The reason for the question: libfossil doesn't yet support tickets because of their close ties to th1 (i don't want to tie any specific scripting language to it, if at all avoidable). While building this support, it will often be necessary for me to rebuild the repo to ensure that fossil(1) can swallow what fossil(3) is writing. Such rebuilds will need to be done using fossil, as libfossil won't have a rebuild feature until tickets can be fully crosslinked, and it's my current thinking that [fossil rebuild tickets] would be pretty useful for me (and implementing it in fossil would help me in understanding tickets better for future work in libfossil). If my understanding is correct (which it may not be), rebuilding only the tickets would essentially mean doing the following: BEGIN; - collect the list of tickets from the event table, store them in a temp table. - delete all event table entries (where objid IN the_ticket_list). - clear out the ticket metadata tables. - crosslink all ticket manifests, getting their UUDs from the list we stashed in the first step. COMMIT; (If we add an SQL binding for manifest_crosslink(RID), the above could probably be implemented in plain SQL?) Or are there other considerations which would need to be made? -- ----- stephan beal http://wanderinghorse.net/home/stephan/ http://gplus.to/sgbeal "Freedom is sloppy. But since tyranny's the only guaranteed byproduct of those who insist on a perfect world, freedom will have to do." -- Bigby Wolf
_______________________________________________ fossil-dev mailing list fossil-dev@lists.fossil-scm.org http://sqlite.org:8080/cgi-bin/mailman/listinfo/fossil-dev