Try to find the first place where the processes diverge:

1. maybe find lists files in different order
2. maybe something read input does things in different order
3. maybe some processing uses maps --> hence random order
4. etc...

(of course run with -race, if you already haven't)

On Friday, 25 August 2017 21:56:29 UTC+3, Tong Sun wrote:
>
>
> Update, 
>
>
> On Fri, Aug 25, 2017 at 11:39 AM, Tong Sun <sunto...@gmail.com 
> <javascript:>> wrote:
>
>> Hi, 
>>
>> I'm experiencing a *very very* strange problem now -- the same Go code 
>> is producing different results *for me*. 
>> I'm not kidding, I can't believe that myself, so I've spent *the past 
>> few days* going back and forth to verify everything. 
>> Now, after all these days, the only conclusion that I can make is, albeit 
>> how bazzard it is, same code, different results. 
>>
>> Can someone verify for me what you get please? 
>>
>> go get github.com/go-dedup/fsimilar
>>
>> then 
>>
>> cd go-dedup/fsimilar
>> go build
>> find test/sim -type f | ./fsimilar -i -d 12 -vv 
>>
>> and tell me what's the last output that you got please. 
>>
>> The problem is that *two *of my machines produce:
>>
>> [fsimilar] ## Similar items
>>  map[Similars:[map[Hash:6184610222622303958 Dist:0 SizeRef:1 Name:GNU - 
>> 2001 - Python Standard Library Ext:.pdf Size:1 Dir:test/sim/] map[Name:GNU 
>> - Python Standard Library (2001) Ext:.rar Size:1 Dir:test/sim/ 
>> Hash:6184610222622303958 Dist:0 SizeRef:1]]].
>> *test/sim/GNU - 2001 - Python Standard Library.pdf*
>> *test/sim/GNU - Python Standard Library (2001).rar*
>>
>> But another one, the *only one*, produce:
>>
>> [fsimilar] ## Similar items
>>  map[Similars:[{(eBook) GNU - Python Standard Library 2001 .pdf 1 
>> test/sim/ 15408562819203262167 8 1} {GNU - 2001 - Python Standard Library 
>> .pdf 1 test/sim/ 6184610222622303958 0 1} {GNU - Python Standard Library 
>> (2001) .rar 1 test/sim/ 6184610222622303958 0 1} {Python Standard Library 
>> .zip 1 test/sim/ 6175699711939618002 11 1}]].
>> *test/sim/(eBook) GNU - Python Standard Library 2001.pdf*
>> *test/sim/GNU - 2001 - Python Standard Library.pdf*
>> *test/sim/GNU - Python Standard Library (2001).rar*
>> *test/sim/Python Standard Library.zip*
>>
>> which is what I actually want. 
>>
>> The rest of the following output are exactly the same across all three 
>> machines:
>>
>> $ go version 
>> go version go1.8.1 linux/amd64
>>
>> $ lsb_release -a
>> No LSB modules are available.
>> Distributor ID: Ubuntu
>> Description:    Ubuntu 17.04
>> Release:        17.04
>> Codename:       zesty
>>
>> $ git status 
>> On branch master
>> Your branch is up-to-date with 'origin/master'.
>> nothing to commit, working tree clean
>>
>>
> - all the original source on three machines are pulled from the same git, 
> with same status.
> - I copied the bad code into good machine, and compared the two folders, 
> and files are the same
> - I ran the bad code in good machine, and the result is the bad code 
> works in the good machine. 
> - I copied the good code into bad machine, and the result is good code 
> doesn't work in bad machine any more. 
>
> Adding *all these things* up *I'm sure the code are the same *-- the only 
> different is the machine/build environment. 
>
> I installed from 
> https://storage.googleapis.com/golang/go1.8.3.linux-amd64.tar.gz to both 
> machines. and Now both machines have go1.8.3:
>
> $ type go 
> go is hashed (/opt/bin/go)
>
> $ go version 
> go version go1.8.3 linux/amd64
>
>
> And having updgraded `github.com/fatih/structs` 
> <http://github.com/fatih/structs> on the good machine, the following is 
> no longer an issue any more. 
>
> Oh, I do get one difference to illustrate how strange things are -- for 
>> the same code of:
>>
>>                 verbose(2, "## Similar items\n *%v*.", m)
>>
>> The working machine produces (last two line):
>>
>> [fsimilar] ## Similar items
>>  map[Similars:*[{*Improve Soccer Shooting Technique .mp4 10043873 ./Try 
>> These Soccer Drills/ 17777808297800170271 0 10043873} {Improve Soccer 
>> Shooting Technique .mp4 10043873 ./Top Soccer Training Videos/ 
>> 17777808297800170271 0 10043873}]].
>> [fsimilar] ## Similar items
>>  map[Similars:*[{*Soccer Drills For Youth .mp4 11650500 ./Youth Soccer 
>> Training Drills/ 18062776733066936110 0 11650500} {Soccer Drills For Youth 
>> .mp4 11650500 ./Top Soccer Training Videos/ 18062776733066936110 0 
>> 11650500}]].
>>
>>
>> while the machine with incorrect result produces (last two line):
>>
>> [fsimilar] ## Similar items
>>  map[Similars:[*map*[Ext:.mp4 Size:10043873 Dir:./Try These Soccer 
>> Drills/ Hash:17777808297800170271 Dist:0 SizeRef:10043873 Name:Improve 
>> Soccer Shooting Technique] map[Size:10043873 Dir:./Top Soccer Training 
>> Videos/ Hash:17777808297800170271 Dist:0 SizeRef:10043873 Name:Improve 
>> Soccer Shooting Technique Ext:.mp4]]].
>> [fsimilar] ## Similar items
>>  map[Similars:[*map*[Dir:./Youth Soccer Training Drills/ 
>> Hash:18062776733066936110 Dist:0 SizeRef:11650500 Name:Soccer Drills For 
>> Youth Ext:.mp4 Size:11650500] map[SizeRef:11650500 Name:Soccer Drills For 
>> Youth Ext:.mp4 Size:11650500 Dir:./Top Soccer Training Videos/ 
>> Hash:18062776733066936110 Dist:0]]].
>>
>>
>> even though the code is the same and their `go version` reported the same 
>> as well. 
>>
>> The command to produce above is, 
>>
>> ./fsimilar -i test/test1.lst -S -d 6 -vv 2> /tmp/log
>>
>> Then compare the two logs. 
>>
>
>
>
>  However, the good is *still *good, and the bad is *still *bad. 
>
>
>  
>
>> I've spent *the past few days* to verify & double check everything, and 
>> now my mind is blocked and I'm out of ideas. 
>> Somebody help, Please. 
>>
>>
> Can someone try the above `find test/sim -type f | ./fsimilar -i -d 12 -vv` 
> out for me and see what you got please? 
>
>
> I am afraid that you will get the first result. Please let me know. 
>
>
> THANKS!!
>
>

-- 
You received this message because you are subscribed to the Google Groups 
"golang-nuts" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to golang-nuts+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to