|
Without competition in inhouse development, I get off easy in a certain way.
I have a parallel set of all the main web-app pages. They live on production and differ only by a nuance in the name that distinguishes them. When a page in this set is opened it checks its own name and determines if it's targets are also live production or dev.
If and when everything works (a couple of competent testers who will also be the users for other development), the original files are archived for quick-replacement in an emergency and the dev versions are all saved to the live production names.
It already worked on production so it will work on production.
This works because, at least for quite a few years, it's all my private domain for development so there's no conflicts (human or code). Roll-backs are rare because we (myself and the testers/users) keep the attitude that this stuff has our name on it and one ought to have pride in their work (i.e., don't make a jackass out of yourself in front of 400-500 people). An error shows up in well under a minute after go-live, if there is one, with ca. 3000-4000 hit/hr for the internal site as a whole.
Ravings en masse^ |
---|
"The difference between genius and stupidity is that genius has its limits." - Albert Einstein | "If you are searching for perfection in others, then you seek disappointment. If you seek perfection in yourself, then you will find failure." - Balboos HaGadol Mar 2010 |
|
|
|
|
|
The web app itself was fine (although I don't know what OS version is running on the web server). It's the db servers that caused the issue.
".45 ACP - because shooting twice is just silly" - JSOP, 2010 ----- You can never have too much ammo - unless you're swimming, or on fire. - JSOP, 2010 ----- When you pry the gun from my cold dead hands, be careful - the barrel will be very hot. - JSOP, 2013
|
|
|
|
|
That's the beauty of my luck position. I am developing the item where it will run - accessing the same DB's and all.
Usually they're generic and the actual SQL is by one of those two users (DBA's) - I need to make sure connections work, interfaces work, all the usual. Makes it all beautifully transparent.
But you're in a more realistic situation - unless someone will clone the entire production system for you, frequently, there's going to be deviations developing. If it feels a bit better, you'll probably find out it's a very small thing - but you know how computers are: "almost doesn't count".
Good luck with what certainly will be a tweak.
Ravings en masse^ |
---|
"The difference between genius and stupidity is that genius has its limits." - Albert Einstein | "If you are searching for perfection in others, then you seek disappointment. If you seek perfection in yourself, then you will find failure." - Balboos HaGadol Mar 2010 |
|
|
|
|
|
You should hire me![^]
Seriously though, you might as well not test at all if your test environment is eight years more modern than your production environment...
I know it's easy to say, but your environments really should be as similar to each other as possible.
That makes it a lot easier to find environment specific bugs should they arise.
Maybe you can set your dev and QA environments in 2008R2 compatibility level[^] so at least your modern code doesn't work in those databases either even if it's supported by the engine?
I know you're in a difficult situation and such changes have to go through umpteen layers of management, but it's a thought
|
|
|
|
|
FYI, the compatibility setting won't help. I checked and that function works fine under sql 2014 with a db comp. setting < 110.
This is a lesson (thanks JSOP) that testing should be done in the same environment as production. Our desktop apps are compatible with 2005 (90) so any possible breaking changes always get tested against that environment. I've been bitten by the backward compatibility issue more than a few times, mostly for dumb stuff like older versions requiring any field in the order by to appear in the select.
"Go forth into the source" - Neal Morse
|
|
|
|
|
|
The point isn't that we can't come up with a workaround. The point is that whatever workaround we come up with hasn't gone through a formal testing cycle prior to the deployment.
".45 ACP - because shooting twice is just silly" - JSOP, 2010 ----- You can never have too much ammo - unless you're swimming, or on fire. - JSOP, 2010 ----- When you pry the gun from my cold dead hands, be careful - the barrel will be very hot. - JSOP, 2013
|
|
|
|
|
The family craft! (7)
Sent from my Amstrad PC 1640
Never throw anything away, Griff
Bad command or file name. Bad, bad command! Sit! Stay! Staaaay...
AntiTwitter: @DalekDave is now a follower!
|
|
|
|
|
That's rather neat (assuming it's what I think it is, but I'm not around tomorrow so I'll leave it to someone else).
Whenever you find yourself on the side of the majority, it is time to pause and reflect. - Mark Twain
|
|
|
|
|
I liked it.
Sent from my Amstrad PC 1640
Never throw anything away, Griff
Bad command or file name. Bad, bad command! Sit! Stay! Staaaay...
AntiTwitter: @DalekDave is now a follower!
|
|
|
|
|
I'm assuming that no one has posted an answer because it is easy. It must be easy, even I guessed it in only a few seconds. [Just hope I'm right after making a statement like that]
|
|
|
|
|
Perhaps we'll find out soon?
Sent from my Amstrad PC 1640
Never throw anything away, Griff
Bad command or file name. Bad, bad command! Sit! Stay! Staaaay...
AntiTwitter: @DalekDave is now a follower!
|
|
|
|
|
I was right! (as proof, I'd emailed my answer to you soon after my earlier response). Was going to wait for 2 hrs before 'going public' but got delayed.
It must be just the way one sees them.
|
|
|
|
|
SCROTUM
Michael Martin
Australia
"I controlled my laughter and simple said "No,I am very busy,so I can't write any code for you". The moment they heard this all the smiling face turned into a sad looking face and one of them farted. So I had to leave the place as soon as possible."
- Mr.Prakash One Fine Saturday. 24/04/2004
|
|
|
|
|
Sadly, no.
Sent from my Amstrad PC 1640
Never throw anything away, Griff
Bad command or file name. Bad, bad command! Sit! Stay! Staaaay...
AntiTwitter: @DalekDave is now a follower!
|
|
|
|
|
Dammit! I thought he had that one in the bag this time...
This space for rent.
|
|
|
|
|
is an infinitely echoing 'meow' in either life or death ? [^]
«Where is the Life we have lost in living? Where is the wisdom we have lost in knowledge? Where is the knowledge we have lost in information?» T. S. Elliot
|
|
|
|
|
If a cat in a box feels a pain but noone is there to hear its 'meow', is there then any 'meow'?
|
|
|
|
|
Jülich. Spent a few years there.
I have lived with several Zen masters - all of them were cats.
His last invention was an evil Lasagna. It didn't kill anyone, and it actually tasted pretty good.
|
|
|
|
|
There is no cat
Director of Transmogrification Services
Shinobi of Query Language
Master of Yoda Conditional
|
|
|
|
|
Have to say, that isn't very well written.Quote: However, these quantum bits, or qubits for short, do not display the special characteristics of Schrödinger's cat in contrast to the 20 qubits that the team of researchers have now created using a programmable quantum simulator So they are claiming a new record based off a simulation????
As I said, could be much better written.
|
|
|
|
|
You never know how much you have in your bank account until you look.
modified 20-Oct-19 21:02pm.
|
|
|
|
|
that sounds rather anti-heisen.
|
|
|
|
|
That's right, the bank account doesn't collapse to some random value. That would be the lottery
Here's a thought: Take the kitty by the tail and spin it really fast, close to speed of light. You might say it's location is pretty random and undefined until you stop it to take a measure.
modified 20-Oct-19 21:02pm.
|
|
|
|
|
Who is this Rorschach guy and why does he paint so many pictures of my parents fighting?
Two sociologists are sitting by the pool. One turns to the other and asks, "Have you read Marx?" to which he replies, "Yes, it's these silly wicker chairs."
Pavlov is sitting at a pub enjoying a pint. The phone rings and he jumps up shouting, "Oh s---, I forgot to feed the dog!"
A man walks up to a librarian and asks, "Do you have any books on Pavlov's dogs and Schrödinger's cat?" The librarian responds, "It rings a bell but I'm not sure if it's here or not."
There are two types of people in the world: Those who can extrapolate from incomplete data sets.
Einstein, Newton, and Pascal decide to play hide-and-seek. Einstein is "It," closes his eyes, counts to 10, and then opens them. Pascal is nowhere to be seen. Newton is sitting right in front of Einstein, with a piece of chalk in his hand. He's sitting in a box drawn on the ground, a meter to one side. Einstein says, "Newton, you're terrible, I've found you!" Newton says, "No no, no. You've found one Newton per square meter. You've found Pascal!"
A biologist, a chemist, and a statistician are out hunting. The biologist shoots at a deer and misses 5 meter to the left. The chemist takes a shot and misses 5 meter to the right. The statistician yells, "We got 'em!"
What do you get when you put root beer in a square glass? Answer: Beer
A photon checks into a hotel and the bellhop asks him if he has any luggage. The photon replies, "No, I'm travelling light."
Did you hear about the man who got cooled to absolute zero? He's 0K now.
There are only two hard things in computer science: cache invalidation, naming things, and off-by-one errors.
A classics professor goes to a tailor to get his pants mended. The tailor asks, "Euripides?" The professor replies, "Yes. Eumenides?"
|
|
|
|