We have an evil query that reads every row from a table, but should not. To help the devs find the source of that query, I want to make SQL Server error out when any select against that table has no where clause.
An app is doing an evil select with no where. The select reads every row of a table having about 6,500 rows. The select is fast in SSMS (< 1 second), but when run by the app it’s slow (about 1/2 hour). We think that’s because the app is slowly iterating over the result set. It’s an active table for updates and inserts, so other queries may be blocked while this read takes place.
The developers can think of no reason that any app should read every row of that table. They suspect an oversight by a past developer.
The evil query-with-no-where is my top-runner, by far, for having the longest total duration in Query Store.
I know which app is issuing the evil query by using SQL Profiler to identify the app name, host name, and DB user name. The app’s developers have been unable to locate the source of the evil query. I want to help.
I want to cause any select against that table that has no WHERE clause (i.e. selects every row) to fail immediately. Our hope is that the app will log the errors, or possibly an end user that triggered the activity will report a 500 error to us, and this will give us another clue to find what code is issuing the evil query-with-no-where.
Our other selects against that table have specific where clauses and only return a subset of the table’s rows. Those selects must be allowed to continue.
I’m DMing a 6 person campaign in 5E and one of my players made a Warlock that is dreadfully sick, but is bolstered by the Undying Warlock patron. How can I balance giving him mostly temporary hitpoints as a more flavorful replacement for normal hitpoints? For instance he might only have 4 HP but have 12 temporary hitpoints that cannot be regenerated via healing or hit dice, but may be replenished after a long rest.
Is there a good, balanced way to implement this? Alternatively, is there a balanced homebrew Warlock patron or other mechanic that does something similar?
I have a group of friends that I’m going to be DMing for the first time. They are almost all veterans of TTRPGs and want to play a game for sure, but I have a plan that may be controversial and rage-inducing. I want to have them make two separate parties and have the second one get killed.
See, my first group I DMed/played with were also new to D&D, so when they took a quest from the stock Adventurer’s Guild that the guild had posted that was for “new” adventurers, and they immediately got TPK’d. Level one characters, no big investment. Make new characters in same world and guild. They take the same quest again, and they get TPK’d again. Turns out the quest I had printed out was made for a party of like, 5 at level 5. Oops. But it gave me an idea: what if that quest was intentionally put there because someone in the guild KNEW it was tough, and was trying to get adventurers killed? So after letting their 3rd characters level up a bit to level… 4 or 5, I can’t remember, they see the quest again and they all immediately took it hoping to avenge their previous characters ( I scaled the difficulty a bit). It sparked a campaign of trying to follow the thread and chain of command to see who was responsible that then turned into a conspiracy by a neighbouring country that turned out to be great fun, and it managed to get these 3 players that NEVER roleplayed to truly get invested.
My question is this: should I try to recapture that magic by killing my new group’s player characters? The way I see it, it establishes that I don’t fudge rolls, and that there might be something wrong with the guild and their challenge ratings, as well as making the players more invested in what happens when they see that same quest pop up again.
This can backfire soooo many ways, though. They can start seeing me as that evil DM, being untrustful of me, they can decide to never be invested as their characters can die at any moment, or the worst scenario: they decide not to play at all.
I can’t seem to think up a good way to get them invested in this conspiracy without some sort of tragedy happening. The closest I can get is making an NPC adventurer and hoping they get attatched to them, and sending him on a quest to die. That could take a real long time to get the proper investment in an NPC that dies off-screen, so to speak, and I don’t really want to have a bunch of bog-standard one-session quests for them to go on while they get attatched to this NPC that will trigger the real campaign.