Strange duplication of dives

Dirk Hohndel dirk at hohndel.org
Sun Dec 16 09:43:18 PST 2012


David Tillotson <david at acmelabs.co.uk> writes:

> On Sun, 16 Dec 2012 07:10:13 -1000 (HST)
> Dirk Hohndel <dirk at hohndel.org> wrote:
>
>> Just as a gentle reminder... using master on your "real" dive file is
>> not always a good idea.
> [snip]
>> 
>> There are two ways to play this:
>> a) use the released version on your real dives and play with master to
>> see what we are working on (and to help testing / writing /
>> documenting the code).
>> b) make versioned backups of your dive file. The nice thing is
>> that the dive files are plain text, so git is a very useful backup
>> tool. Simply commit the changes adter every download. Then it's easy
>> to go back if things change or break and re-download the dives. And
>> you can use git diff to manually recover things like notes, locations
>> and other data you have manually added after a download.
>
> I tend to do a combination of a & b - I keep a local backup every time,
> but once I am happy with what the master version is doing, I stick with
> that. So far only had to backtrack once :)

Oh good. I'm glad.

>> > I just found an odd new bug (or maybe a feature ;) when downloading
>> > today's dive on a newly built version. I use a Reefnet Sensus Pro to
>> > track my dives, which doesn't seem to allow me to delete dives, so I
>> > rely on the drop-duplicate code. Today, I found that it was adding
>> > the dupes, but putting them 1 minute earlier, and often treating
>> > them as separate trips. I have attached my file, complete with the
>> > manufacture test dives and some odd log entries due to leaving my
>> > Sensus on the balcony in Mexico (I don't think I would be here with
>> > real dives like that!).
>> 
>> Uhh. That's annoying. You can obviously delete all these dupes, but
>> still, if they come back that could turn into a real pain.
>
> It is really just an annoyance, and I would have just deleted them were
> it not for the trip ID oddity.

Well, Linus' new trip handling code tries to be smart when new dives
come in (just like my old code did) and it simply fails in other,
creative ways. Technically what it does makes sense and is consistent,
it's just sometimes a bit unintuitive...

I may have to fine tune the logic a bit. Another thing to add to my
looooong todo list.

/D


More information about the subsurface mailing list