Observations and a suggestion or two. The connection speed type selection is nowhere in the options, does not appear when upgrading from an older version, and XoloX does not put the registry key in unless it's installing 'clean' (no registry entries) I only saw it, and the correponding key, after erasing HCU/software/xolox. While speaking of the registry, changing 'fisttime' to 'true' has no effect on how xolox starts, and I still dont' know what 'needtotalinit' is, or when it might be set to false. there is also a rare bug where XoloX will double the shared extentions and directories, but I can't reproduce it at will. (I think it has to do with manually editing the registry while XoloX is running)
I did some tests running BearShare 2.3.0 on port 6437 and XoloX 1.12 on port 6436 (since it can't be changed) My first test was to see if the 'connect to host' line in XoloX works. In my experience, it does not. I enter my IP and port 6347, click add, and nothing tries to connect to BearShare. Is it dumping the IP into the host cache instead of conencting to it? Is XoloX blocking it because it's my IP, even though it's a different port than XoloX uses? Bearshare was able to connect to XoloX with no difficulty, but would frequently drop XoloX claiming the host didn't respond. (this could be due to my severe bandwidth limitations.
The number segments XoloX will attempt to download at once is equal to two times the 'upload speed' setting. Downloads have no speed limits, but I don't have the bandwidth or files to share to observe how uploads work. Does each upload get 'upload speed' K/s, or does each upload get ('upload speed' / number of uploads) K/s?
Downloading a large file from one client to the other I notied that XoloX downloaded from BearShare at about 4.7 Mbits/s (~600 KB/s) but BearShare only downloaded the file at about 1.4 Mbit/s (~170 KB/s using Max speed settings, obviously) I don't know for sure which client is at 'fault' but there was a lot more hard drive grining when Bearshare downloaded form XoloX, so I wonder if the 'slow' speed has to do with how XoloX buffers it's uploads.
Also, as theorized, XoloX is unable to filter out the MP3 metadata BearShare (and gnotella?) send along with query hits. Any mp3 hots that come in from a given host which sends such data will exhibit the following behavior: First hit will be normal and is ok to download. Second hit will be an MP3, but incorrectly display the file name as part of the metadata (eg: 44 kHz 4:09) and have a corrupted file size. All remaining hits from that host will display the filenames with 1 character missing from the beginning, and also have corrupted file sizes. The corrupt file sizes appear to be related to the length of the previous song.
Upon a closer examination of resumeinfo.txt, I found out that XoloX interpets any file matching the search query with the same file size as the same file. However, it appears that XoloX drops any files of duplicate size from the same host. Searching BearShare with XoloX I got 23/31 mpg files returned, and looking at the file sizes ther are 8 files with exact same file sizes as others. This is bad, as many files are chopped into evenly sized chunks to make distrobution easier; file001.ext from one host and file002.ext from another could have the same size, and therefore be seen as the same file, but in reality are just different parts of the same thing.
Only files of the same size AND NAME should be dropped if returned from a single host, and only files with the exact same name should be automatically grouped as a single file. Returns should be sorted as follows: Files of the same size listed next to eachother sorted by rank, with the file size groups listed by order of total group rank. Users should be able to highlight several files and right click to get a menu which lets them do the following: "download" which is similar to the current usage, where any files of seperate sizes are treated as seperate downloads, but when the user selects a download that is the same size (with a different name) as an already downloading job, they should have the option of adding it to the job or making a new one; "download as >" with a list off of the arrow giving them each different file name selected as being the same file; and "Add to >" with a list off the arrow of any downloads currently in progress with the same file size. Double clicking should work the same as "download", in that if a file with the same size is downloading, a yes/no box should appear asking if the user wants to add it to the job.
That's all for now. |