IG and Origin Count Limits

Here we test out how many IGs can be made in a single origin

You can decide how many IGs to create using this input, which will result in a call back to this page with that value set as a query param that will be read, and that many IGs will be joined for each of the www, auctions, and interest-groups origins within pstone.com

Conclusion: while the join for an IG will succeed no matter what, and it may even participate in the auction for a very brief period, the 2000 limit seems to be respected within a few seconds. (To be clear this is not a surprise, it is intended to verify the baseline for other tests).

Past Results

At the time of writing (Feb 12 2024) the limit of IGs per origin is 2000.

General Observations

Try more than 2000 IGs for Same Owner Origin

Here, we see if more than 2000 IGs can be registered. (Note that, while it's nice to verify, this is meant more to serve as the "base assertion" of the 2000 limit per origin, for testing the ability to use more than 2K per site, as the limit is stated as per owner, which is site-specific.

Since there isn't a great way to see the IGs present in the browser, or running in a particular auction, we use counts on the console log:

You can re-run this experiment using this link which will redirect here and try to create 3000 IGs and then run an auction, with results observable in the console.

Here are screenshots of one invocation:

Join Successes

The join messages are all grouped so we can just take the console grouping count.

Bidding Function Invocations

I couldn't get the messages from the bidding function to group in the same way (even when constant) so here I'm going off the number of info messages, which are exclusively from the bidding function (verified by pulling out the lines and counting matches in bbedit). Since there are 2093 invocations of console.log all from the bidding function, while 3000 were joined, this (likely) indicates that the limit enforcement was underway (several other experiments show the delta narrowing randomly but quickly, further verification could be done here but this seems likely the explanation).

Auction Succeeds

Finally we check to see the auction succeed in case anything interesting happens with silent failure.

Where the image was produced like so:

          
            fastify.get("/creatives/oooohhhh", function(request, reply) {
              console.log("oooohh request");
              let html = '

A stranger, from the outside!...

: '; reply.raw.writeHead(200, { 'Content-Type': 'text/html' }) reply.raw.write(html) reply.raw.end(); });