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!

ProGet: incorrect license violations and errors when recording them



  • Hi,

    We are on 5.3.11 Free Edition, a single instance. We have multiple feeds to allow us to structure them as we wish and we have some connectors back onto this instance to aggregate feeds and make consuming them simpler. However, we are getting thousands of license violations recorded even though this is all on the same instance. We have no proxy servers involved but we do have more than one layer of connector/feed. For example:

    Feed A -> Connector B -> Feed C
    -> Feed D -> Connector E -> nuget.org

    Could this be causing it?
    Another thought: our feed and connector urls use the DNS name of the server and not the IP address. Could this make a difference?

    We also have errors logged when recording violations, which looks like a straight up bug to me?

    Unhandled exception recording license violation: Violation of UNIQUE KEY constraint 'UQ__ProGetLicensingViolations__Lookup_Hash'. Cannot insert duplicate key in object 'dbo.ProGetLicensingViolations'. The duplicate key value is (15, 0xa9e4198114110a2e3ee3ed859e66e9c91c469cca9bacfc55c952a2ae03e035b6). The statement has been terminated.

    Thanks in advance.

    Mike.


  • inedo-engineer

    Hi Mike,

    For the connector issue, can you try setting the Web.BaseUrl in your Advanced Settings to your DNS name? Please let me know if that works.

    For the errors logging the license violation, I'm going to need to dig in a little more on that. I'll let you know when I have more information.

    Thanks,
    Rich



  • Hi Rich,

    Web.BaseUrl was already set to "http://crn-ppfs02/". Is that what you meant?

    Thanks,

    Mike.


  • inedo-engineer

    Hi @mike-vanoorschot_1180,

    Yes, that is what I'm referring to. Just to confirm, that is the same URL that your connectors use?

    Thanks,
    Rich



  • @rhessinger It is, yes.


  • inedo-engineer

    Hi @mike-vanoorschot_1180

    We check for local requests using HttpRequest.IsLocal, which basically just looks for 127.0.0.1. If it's not local, then a license violation is recorded.

    If the server doesn't resolve proget.xxxx.com as 127.0.0.1, then configuring BaseUrl will be a problem, especially with NuGet. The NuGet API requires absolute urls (issue #1), and many API responses are just URLS that the client (in this case, the connector) must follow to get the "real answer" (issue #2). So this will trigger license violations.

    If you need to specify a BaseUrl (you really shouldn't have to), then you'll need add a /etc/hosts entry for proget.xxxx.com 127.0.0.1


Log in to reply
 

Inedo Website HomeSupport HomeCode of ConductForums GuideDocumentation