En honor a la verdad ¿Cual fue tu peor cagada en sistemas?

Lo de CrowdStrike de la semana pasada no es un caso aislado, la mayoría de los que trabajamos en sistemas enviamos a producción algo, alguna vez, y rompimos todo.

Sí, yo también me mandé cagadas importantes, todos lo hicimos, y si no te sucedió es porque nunca tuviste el poder, pero te juro que tarde o temprano te va a suceder.

Tengo varias anécdotas, algunas puedo compartir, otras no, así que voy a empezar con las bien viejas de cuando apenas empezaba mi recorrido de IT y me daban el control de cosas que jamás deberían haber pasado por mis manos 😁

La primera es más bien simple, un caso de ¿A quién no le pasó?, había conseguido mi primer trabajo como empleado en 2001, hasta ese momento había laburado de forma independiente, pero la cosa se estaba poniendo económicamente áspera, así que tuve que optar por arremangarme y entré a Segunda Mano.

No sé si lo recuerdan, los más viejos seguro que sí, era donde uno vendía cosas usadas, antes de Mercado Libre, antes de cualquier otra cosa así estaba el Segunda Mano. 

A fines de 2001 me contrataron como programador en ASP cuando yo no había hecho jamás ni una línea en ese lenguaje de Microsoft (había aprendido apenas PHP 3).

El entorno de trabajo era realmente pequeño, la página web replicaba lo mismo que salía en la edición en papel, no era al revés (como debería), tenían toda la oportundidad de crear un mercado completamente, pero cero visión.

El team era pequeño, había un programador principal que era el que tenía una versión local y ahí testeaba, a las pocas semanas de entrar a trabajar en un lenguaje que apenas dominaba terminé subiendo cosas a producción, era tan sólo un detalle en el pie de página.

Cerré todo y me fui a casa.

Al otro día viene mi jefe y me muestra mi línea de código "ves?", era un hermoso loop infinito, cada vez que entraba alguien a la página reventaba todo, cómo logré publicar eso y por qué no existía testeo nadie se lo preguntó, la culpa era toda mía porque eso de control de versión, testing y QA eran fantasías de otro universo 😁

Fueron apenas doce horas de sitio web roto,  ¿a quién no le pasó? Para qué me dan acceso a producción si saben que no sé nada?

Pero la peor fue en mi siguiente laburo, para 2002 Segunda Mano se iba en picada por la crisis y en vez de apuntar los cañones 100% a digital apuntaron al papel, una jugada maestra, obviamente 😋🤌 ideal para reducir costos, imagínense, así que nos fueron rajando uno a uno, primero a los de marketing, luego a los de sistemas y de esos primero a los nuevos, papito.

Al poco tiempo conseguí trabajo en el RENAR, el organismo estatal que controlaba (tiempo pasado, le cambiaron el nombre luego) las armas y explosivos. 

Empecé como webmaster y a los años me pasaron a hacer cosas más relevantes como soporte (?), cómo me cagaron durante esos años! Después se apiadaron de mí y vieron que me manejaba bien con SQL así que me pusieron a hacer fixes en los datos de la base de datos de explosivos.

Un día me tocaba actualizar el domicilio de un polvorín que quedaba en la loma de la garcha, escribí mi UPDATE, qué tenía que cambiar y, ejecuté... sin haber escrito el WHERE.

Para los que no saben nada de SQL, le dije al servidor que le pusiera a TODOS los usuarios de explosivos el mismo domicilio, A TODOS sin fijarme en cuál.

Esto en producción, claro, y pisé todos los fucking domicilios con uno solo.

El pánico me puso blanco, fui rápido a la oficina de mi jefe, sabía que trabajábamos con dos servidores, uno de escritura, otro de lectura, uno replicaba en el otro, pero no tenía mucha idea de cómo recuperar la data.

Mandó un SELECT de todos los usuarios, lo guardó y se me cagó de risa en la cara, había "rescatado" los domicilios arruinados.

Ufff, la había cagado completa, después de eso nunca más me olvidé un WHERE.

¿Por qué chota editábamos en producción? Y, bueno, del otro lado teníamos usuarios que llenaban basura de datos  y teníamos que corregirlo, ahora, olvidarme el WHERE fue lo más newbie de mi vida, ya no me pasa más, jejeje. Esto fue hace más de 20 años así que, creo yo, prescribió hace rato.

Detalle boludo: los de explosivos tenían una base de datos hecha en... Access! Se lo sacamos de ahí y mandamos todo al SQL Server y eso no les gustó nada, ya no podían cometear con eso 😋pero esa es otra historia...

Ahora cuenten una mega-cagada ustedes, las otras que hice no "prescribieron" así que me las guardo otra veintena de años, jejeje.

Si te gustó esta nota podés...
Invitame un café en cafecito.app


Otros posts que podrían llegar a gustarte...

Comentarios

  • Danbat     22/07/2024 - 11:17:32

    Creo que la más grave que me mandé fue en mis primeros años en INTA. Yo estaba trabajando en imágenes satelitales, pero como era analista programador me pidieron una mano en "Sistemas", que era un viejo pelado 99% idéntico a Lenin (no se qué tan alto era Lenin). La cosa era que tenía problemas de espacio en el servidor (Windows 3.11, creo. Sí, fue hace mucho tiempo) y que borrar archivos le estaba tomando demasiado tiempo. Vi que habían directorios duplicados así que le mandé un DELTREE a un directorio que debía ser una versión vieja de Windows pero no, era EL DIRECTORIO de Windows.

    Para los que no saben, DELTREE no pedía confirmación, directamente mataba todo. Lenin no me dijo nada más que un polite "bueno, igual tenía que actualizar" así que me fui silbando bajito por los pasillos y no volví a tocar un servidor hasta muchos años después donde yo era programador, diseñador, DBA, sysadmin, QA y cadete así que nadie se entera de los errores .

  • Diego     22/07/2024 - 13:05:21

    Ufff.. tengo en el historial un DELETE sin WHERE en producción. Sudor frío por la espalda. Por suerte se pudo reconstruir.

    Eran épocas donde - al menos en el desarrollo web - no existía eso de los entornos prod/dev/testing... a huevo en producción.

  • Chacka     22/07/2024 - 13:10:49

    Primera experiencia laboral. Primer día de pasante en la Facu.
    Primer tarea: migrar la PC del Decano a la nueva PC.
    Le perdí sus e-mails históricos de años y años.

    • Josepzin     22/07/2024 - 14:17:34

      Mal...

    • Fabio Baccaglioni     22/07/2024 - 15:21:24

      el amor que te iba a profesar el decano luego de eso

  • GabrielSQL     22/07/2024 - 13:16:35

    DELETE sin where a toda la tabla donde todos los equipos guardaban los parametros que usaban los distintos procesos etl

    • Josepzin     22/07/2024 - 14:18:51

      NO TE OLVIDES DE PONER EL WHERE EN EL DELETE FROM (buscala en Youtube! :D)

  • Sebastián     22/07/2024 - 13:16:40

    Creo que la más genial fue una vez que autoricé a que apaguen una aplicación y que borren toda la info que estaba guardada.
    Había estado buscando los que la usaban por meses (el login era de alguien que había renunciado hace años jaja), y hacía 6 meses que no se usaba. Me tenían podrido con un montón de cosas que se guardaban al pedo y corté por lo sano de manera unilateral (liquidé como 15 apps en ese momento).
    Se armó bardo porque ahí guardaban histórico de visitas a clientes, y les había saltado una auditoría judicial heavy. Inventé que la apagamos porque había que pagar una licencia de google maps y que para levantarla había que pagar la licencia que costaba un montón de plata. (esto era cierto, pero para otra app). Y además le tiré el muerto a seguridad por no bajar el login viejo.
    Nadie quiso poner guita, ni hacerse cargo de lo del login y no pasó más nada jaja.

  • Anónimo     22/07/2024 - 13:45:46

    Hablando de cagarla en una base de datos, yo TRUNQUE (borre todas las filas de varias tablas con un solo comando sin posibilidad de rollback) en una base de datos de producción por error, pensando que lo hacia en desarrollo. En mi defensa la IP del servidor de desarrollo y la de producción variaban por un dígito :D

  • gorlok     22/07/2024 - 13:47:35

    En el primer trabajo, el disco de la máquina donde estaban todos los datos y fuentes de producción se llenaba regularmente. Cuando pasaba, había que mover cosas a diskettes (época de PC-XT) y borrar lo copiado. En algún momento la cagué. Me equivoqué de unidad o hice el DEL mal y borré TODO el disco.

    Por suerte conocía y tenía encima entre mis diskettes que llevaba a la facu las PC-Tools y las Norton Utilities con los comandos para poder recuperar archivos borrados. Aunque el DOS perdía la primer letra y había que reponerla de memoria.

    Estuve un par de horas para recuperar todo. Al final salió bien a pesar del mal trago. Y me dejó una experiencia que me volvió más precavido y paranoico hasta el día de hoy.

    • Danbat     22/07/2024 - 16:49:27

      Acabás de recuperarme viejos recuerdos. Había olvidad lo del undelete y que tenías que ponerle la primera letra al archivo.

  • Gustavo     22/07/2024 - 14:03:05

    Yo que trabajo en operaciones mandarse cagadas esta siempre a la vuelta de la esquina y mas cuando tenes un problema que esta afectando servicios, recuerdo que una vez en una reunion de emergencia por un problema boludisimo recomende que stopearan los servicios de uno de los servidores que generaba los streams de video para una plataforma de IPTV, hacer eso genero que se cayera el servicio de 300k clientes, si bien la falla no fue completamente culpa mia ya que la plataforma tenia hot backup y nunca deberia haber generado indisponibilidad verle la cara a mi director mientras en las graficas perdiamos 300k clientes fue bastante aspero.

  • Gustavo V     22/07/2024 - 14:22:51

    - puse mal un comando rm y borre todo el codigo fuente de un servidor productivo (en esa epoca no se usaba control de codigo) por suerte habia hecho un sistema que hacia backup cada 4hs.

    - me fui de esa empresa y el sistema de backup lleno un servidor productivo e hizo caer una de las redes de telefonia celular por 3hs, salio en las noticias, me entere porque me llamaron para putearme y les dije que hacia 2 años que ya no laburaba ahi.


    tengo mas pero no quiero quemarme

    • cesar     22/07/2024 - 18:47:06

      era deployer y me tenían podrido con las implementaciones a medio hacer con un montón de cosas a corregir así que agarré e hice un deploy que me mandaron así como estaba, mal y con errores desde desarrollo y cierta página de cierta telefónica (guiño) estuvo toda la noche y parte de la mañana sin andar. Siempre que estaba abajo decían que perdían millones, y no eran mis millones así que no me importó.
      PD: una vez me tocó ver código asp clásico de un tal Baccaglioni Fabio en un laburo lleno de gente desagradable.

      • Fabio Baccaglioni     23/07/2024 - 01:30:56

        código ASP clásico mío? Tecnonexo? :D cómo me fui de ahí, qué lugar desagradable...

  • Liliana     22/07/2024 - 15:08:04

    Por inconvenientes en un storage, me pidieron q revisara algo relacionado a los puertos desde la parte posterior del rack. Fui del frente y lo desplace hacia adelante. El equipo estaba en el rack pero no tenía guías.. y si, cayó al piso, cortó cables y gran parte de la operación quedo fuera de servicio por una o dos semanas.
    Me echaron, pero me indemnizaron 😁

    • Fabio Baccaglioni     22/07/2024 - 15:20:51

      jajaja puede pasar, me imagino todo yéndose al choto, "para qué me piden que me fije si saben cómo me pongo?" :D

    •     22/07/2024 - 22:09:23

      Literalmente hiciste caer un servidor

  • Gus     22/07/2024 - 20:01:40

    Creo que me mandé unas cuantas, pero una que me acuerdo bastante es la siguiente: nosotros desarrollábamos plataformas de streaming para varias empresas, una de ellas era una plataforma de películas para un país en Asia, y otra de pelis XXX, una vuelta se me mezclaron los repositorios y aparecieron imágenes porno en el sitio de Asia, todavía me acuerdo al chinito putéandome "this is embarrassing" me decía... me quería morir

  • Fabricio     22/07/2024 - 20:02:29

    Lo mío no es tan grave, pero cuando recién empezas, clonar y confundir el origen con el destino...

  • Leandro MM     22/07/2024 - 21:46:50

    La del DELETE sin el WHERE es un clásico. Creo que a (casi) todos nos pasó.
    También no tan grave es un SELECT bloqueante sin WHERE sobre una tabla maestra en una BD enorme que deja paralizado todo el sistema porque nunca termina y todas las demás consultas concurrentes se van encolando.
    Alguna vez leí por ahí que hay que empezar a escribir una consulta SQL poniendo primero el WHERE, y luego el resto.

    En mi caso, me han pasado varias (incluyendo las de SQL). Desde algunas no tan graves, como instalar un SO en una partición equivocada en la PC de un cliente particular. Hasta meter en producción un "fix" sin avisarle a nadie pero que terminaba rompiendo otras cosas, y tener que parar toda la operatoria de un banco para volver todo atrás. 🙈

  •     22/07/2024 - 22:14:31

    Lo mas pesado, y a comparación de las cosas que leo, poca cosa, es haber mandado a producción un código que no andaba y rompía por cualquier lado.
    Para el final del día estaba andando devuelta.

    La típida de TI:
    - ¡¿Cómo que no anda?! ¿Probaste reiniciando?
    (En el teléfono se escucha como teclea rápidamente)
    - ¡Pero sí!
    - ¡No puede ser! Si esto andaba, algo malo hiciste
    - ¡Simplemente me logueé en el sistema! No se puede romper por tan poco
    (Se escucha teclear mas rápido hasta que se escucha la tecla ENTER con toda la furia)
    - A ver, reiniciá, haceme el favor.
    Tres minutos después
    - Ahhh! Ahí anduvo ¡Gracias!
    - No vuelvas a llamar si reiniciando se arreglaba.

    La cagada fue que habían migrado la base y se olvidaron de "unirla" al sistema productivo.

  • StratoCat     23/07/2024 - 22:57:06

    En el Estudio en el que trabajaba compraron una Compaq Presario cariiiiiisima ... segundo dia, se me ocurre que tenia que ponerle otro disco, la abro y sin querer rozo con mi dedo indice parte del mother, vi la chispita y senti la mini patadita de la estatica. Si, yo era uno de esos boludos que arrastran los pies en la alfombra cuando caminan y habia juntado tanta estatica esa mañana que podia haber causado un EMP en todo Bueos Aires. Conclusion: tuve que mandar a reparar la maquina jurando y perjurando que no sabia que habia ocurrido. :D:D:D

  • Pablo     24/07/2024 - 09:53:46

    En mi inicios de sysadmin escribi un script para hacer un backup. Por error se parseo mal una variable vacía y se ejecuto un "rm -rf /" a la mñana siguiente no andaba nada, como era el sysadmin tuve que laburar a dos manos para restaurar todo el sistema, lo bueno es que pude corroborar que los backups andaban.

    • CoYo     25/07/2024 - 04:45:03

      Me quedo mas tranquilo, pensé que era el único nabo al que le pasó algo así (por no revisar variables en un bash antes de un rm -rf voló completo un server en producción de un buscador yanqui)
      Decí que alguien tenía un snapshot y lo recuperaron relativamente rápido.

  • Gustavo Karol     24/07/2024 - 10:34:12

    El que nunca hace nada, nunca se equivoca. El que investiga, le explotan las cosas. Fue así que desarrollando un dispositivo con módulo GSM para adquisición de datos, redirigí (mal) el puerto 80 del router de la empresa. La imprudencia por el exceso de confianza los dejó a todos sin internet, e incluso bloqueado el acceso al router. Fueron horas de presión hasta que pude "revertirlo".

  • CoYo     25/07/2024 - 04:59:34

    Fuera de la comentada del rm rf /.. veamos... una vintage!
    Año 199yalgo, empezaban las redes. Y la afip había impuesto que había que presentar en diskettes de 3 1/2 los datos de las nuevas apps.
    Yo laburaba para un local en el microcentro. Llovía gente pidiendo disquetera de 3 1/2!
    En una de esas, me mandan a una oficina de algo estatal (no recuerdo bien que era pero recuerdo que hacían manuales escolares)
    Llego y veo mi primer windows 3.1 con placas de red y funcionando!
    En esa época, se usaba cable coaxial de 50ohms y conectores BNC. Y la red, en vez de centralizar en hubs, era serie. O sea, era como una guirnalda de navidad... todos los terminales unidos entre si con T si pasaban de largo a otro terminal, o con un terminador de 50ohms si cerraba la línea.
    El tipo, que no tenía idea de cableado de redes, saca un terminal de la red y saca la T y el terminador del cable. Sin terminador, la red se cae. Le pongo la diskettera al terminal, lo vuelvo a su lugar, y, como un idiota, le meto el cable coaxil directo a la placa, pensando que la T y el terminador estaban, incluso, al pedo.
    Obviamente, la red nunca volvió a funcionar. Y yo, mas que tirar un ping y controlar algun driver, no sabía...
    Me fuí con la premisa de volver mañana... y nunca mas volví.
    No cobramos la diskettera, pero posta, el stress del momento hizo que me chupara un huevo.
    Derecho a buscar info de como mierda era el tema y trauma superado.

Deje su comentario:

Tranquilo, su email nunca será revelado.
La gente de bien tiene URL, no se olvide del http/https

Negrita Cursiva Imagen Enlace


Comentarios ofensivos o que no hagan al enriquecimiento del post serán borrados/editados por el administrador. Los comentarios son filtrados por ReCaptcha V3.