Hi @koksime-yap_5909 ,
Data deduplication is an operating-level system function. On Windows, there's the Data Deduplication Feature. There are more options for Linux, but ZFS Deduplication is pretty popular.
-- Dean
Welcome to the Inedo Forums! Check out the Forums Guide for help getting started.
If you are experiencing any issues with the forum software, please visit the Contact Form on our website and let us know!
Hi @koksime-yap_5909 ,
Data deduplication is an operating-level system function. On Windows, there's the Data Deduplication Feature. There are more options for Linux, but ZFS Deduplication is pretty popular.
-- Dean
Hi @davi-morris_9177 ,
For multi-file packages like PyPI, the entire package (i.e. all the files) is promoted. This is the same in the UI as well.
-- Dean
Hi @Nils-Nilsson,
Thanks for the report; this was a trivial fix and I just committed the change to PG-3138 , which will be in the next maintenance release (Oct 24).
As an FYI, if you uncheck "Restrict viewing download statistics to Feed Administrators" on the Feed Permissions page, then error shouldn't occur.
-- Dean
Hi @koksime-yap_5909 ,
Docker registry import from Sona, JFrog, and other ProGEt instances is coming soon via PG-3128 - we anticipate that in the next maintenance release.
As for Assets, I'm afraid we don't have any support for that planned in the near future - it's relatively easy to write a script that "extracts" them - if you could extract it to a ProGet drop path, then they'll be imported that way.
https://docs.inedo.com/docs/proget/feeds/feed-overview/proget-bulk-import-with-droppath
-- Dean
Hi @jfullmer_7346 ,
I'm afraid I can't reproduce this data that lead to this error; I did manually hack the database to get it close to what your results showed (i.e. WinSCP and winscp) -- and I got an error the first re-index, but then it got fixed a second time.
At this point, it would require having your database and attaching a debugger to see what's going on. That's a bit more effort than we're able to spend today on a community / non-paid user today, especially given the trickyness of this bug.
HOWEVER -- since you're familiar with PostgreSQL, it might just be quicker to DELETE the duplicate / unused PackageVersionIds and PackageNameIds. That's what we had done in previous versions (2024 and earlier) when there was a problem. Once you have a single record, you can update the casing pretty easily.
Or if you don't care about any packages, just start a new instance of PRoGet and add the packages in. This is all happening b/c "bad data" got snuck in the database in the first place.
-- Dean
Hi @fabrice-mejean ,
Oh I see; that's basically just an alternative URL to query, instead of (or in addition to) official public repositories.
For example, the OSS Metadata Provider for npm is https://registry.npmjs.org. A Custom Provider is one with an alternative URL. Maybe a vendor site, or a differente repository that uses the same APIs?
As the docs mentioned, we have no idea why anyone would want to do that. But it's technically possible.
Thanks,
Steve
Hi @mmaharjan_0067 ,
It sounds like you're on the right track with researching this; your reverse proxy is definitely "breaking things" somehow.
Based on what you wrote, it sounds like your reverse proxy is terminating the request because there's no output from the server after a while. The "no output" is expected, since assembling the upload takes quite some time, and that's likely where the "operation cancelled" would be coming from.
I would look there and see if you can adjust timeouts. As for pgutil, here's the code used to perform the multi-part upload:
https://github.com/Inedo/pgutil/blob/thousand/Inedo.ProGet/AssetDirectories/AssetDirectoryClient.cs#L197
-- Dean
Hi @ashleycanham ,
This is a fairly complicated issue behind the scene, and is related to how these packages have multiple casings across different versions.
This is something that should be addressed with PG-3100. After upgrading, you'll want to re-index the feed. If any packages still have incorrect casing, you can re-upload them to ProGet to correct the names.
-- Dean
Hi @power_pille ,
That's strange; I'm wondering if there's some kind of collation problem on your database.
Can you run this?
SELECT CONVERT (varchar, SERVERPROPERTY('collation')) AS 'Server', collation_name as 'Database' FROM sys.databases WHERE name = 'ProGet';
What are the collation you're seeing?
ProGet must be SQL_Latin1_General_CP1_CI_AS
-- Dean
Hi @dev_7037 ,
This is not possible and we have no plans to add support for this.
Some users have reportedly used reverse proxies and page/URL-rewriting, but it's a headache and usually causes problems. Best to use a different host name and change URLs accessed by clients.
-- Dean
Hi @Anthony ,
The API Access Logs are intended for troubleshooting purposes, not auditing/access monitoring. So I'm afraid there's no way to increase it.
-- Dean
Hi @power_pille ,
I haven't seen that error before, but I suspect it could occur during a race condition while simultaneously trying to access newly-accessed packages. During an intense package restore, the window for the race condition would widen.
It should go away however. If you can look at the error messages logged in ProGet, it'll help give an idea:
Violation of UNIQUE KEY constraint 'UQ__PackageNameIds'. Cannot insert duplicate key in object 'dbo.PackageNameIds'. The duplicate key value is (nuget, <NULL>, NuGet.CommandLine).
In this case, the package is NuGet.CommandLine -- so hopefully you wouldn't see that again. Let us know if that's not the case, and if you repeadly see the same package.
-- Dean
Hi @yaakov-smith_7984 ,
We do not have this API, but it's on our roadmap for Q4; it's going to be a set of command like pgutil users or something to that effect.
-- Dean
@tames_0545 thanks for letting us know, we'll get this fixed right away via PG-3065 in the next maintenance release
Hi @mickey-durden_1899 ,
I've not heard of OCI's Object Storage before, but that error message is coming from the AWS SDK. I searched it, and it's basically saying that OCI doesn't support payload signing, which is used by chunked uploads?
I'll be honest, I have no idea what that means... but it looks like Cloudflare's version of S3 also doesn't support it. But we can apparently just make a small change to get it working: https://github.com/cloudflare/cloudflare-docs/issues/4683
I'm thinking we could try adding a checkbox to disable Payload Signing:
https://github.com/Inedo/inedox-aws/blob/master/AWS/InedoExtension/FileSystems/S3FileSystem.cs
Assuming we did that, could you install the pre-release extension and try it out? If it works, we'll publish it.
Thanks,
Steve
Hi @misael-esperanzate_5668 ,
Although ProGet can handle invalid version numbers for Maven packages, this one is a extra invalid version number (it starts with a "v") and unfortunately we can't support them at this time.
ProGet requires that packages follow the ~20 year Maven standard that "packages start with a letter and versions start with a number". Sadly this team didn't like those standards and opted to do their own thing.
The issue comes with identifying whether com/google/apis/google-api-services-healthcare/v1-rev20240731-2.0.0 is an artifact or a version. Because ProGet is not a basic file server, things like package names and versions matter.
Anyway this will require a significant and risky change to the API so we won't consider it at least for another major release.
-- Dean
@tames_0545 thanks for letting us know! We'll see if we can improve troubleshooting on this in the future as well!
Hi @darren-sloper_5044 ,
ProGet does not currently produce HTTP Access Logs, though we are considering that for a future release. It's really easy to add it via an IIS reverse proxy (WIndows) or with some NGNIX settings if you're on Linux
Dean.
Hi @Jonathan-Engstrom ,
There's no way to "merge" accounts that I can see, so I just changed the ownership of the handful of posts by @JonathanEngstrom to @JonathanEngstrom and updated emails. Hopefully that works
-- Dean