? Vranglåser er frustrerende . Hvis du ber om tilgang til spesifikk informasjon om datamaskinen, for eksempel , kan ikke datamaskinen gi deg tilgang når en fastlåst skjer. A vranglåser oppstår i Oracle når to økter forsøker å bruke samme ressurs. Feilkoden " ORA - 00060 " signaliserer en fastlåst i Oracle . De fire hovedtyper av vranglåser i Oracle er generelle, autonome transaksjon , bitmap indeksen og unindexed fremmednøkkel. Generell Deadlock
En generell vranglås oppstår i Oracle når to uavhengige økter trenger tilgang til samme ressurs samtidig . Hver økt venter på den andre økten for å frigjøre ressursen. Til slutt velger Oracle vilkårlig en av sesjonene og produserer en feil . Dessverre , får selv om en sesjon en feil , forblir ressurs den bruker låst. For å unngå denne typen vranglås , må alle Oracle koding være skrevet slik at prosessene alltid forekomme i samme rekkefølge . Med andre ord , må brukerne kode alle prosesser til å begynne med det samme ressurs og gå gjennom de andre ressursene i numerisk rekkefølge .
Autonome Transaction
Et autonomt transaksjonen er en sesjon som er programmert til å betjene en ekstra sesjon i seg selv. Vranglåser skje i en selvstendig transaksjon når den sekundære økten og den overordnede session konkurrerer om de samme ressursene . Som en generell vranglås , begge øktene avvente utgivelsen av en ressurs før de slipper sin nåværende ressurs. Oracle gir da en fastlåst feilkode , men nok en gang ressursene forbli låst. Som en generell vranglås , er en selvstendig transaksjon vranglås et resultat av inkonsekvent koding praksis . Ved å sikre alle prosesser starter på en gitt ressurs og fremgang i orden, vil en autonom vranglås ikke forekomme.
Bitmap Index
En bitmap Indeksen brukes når data blir lagret og meget lite datamanipulasjon inntreffer. En bitmap indeksen vranglås oppstår når data manipulasjon forsøkes på tabellrader som brukes av det bitmap indeksen. Den fastlåste situasjonen er forårsaket av indeksen blokkene er i bruk når data manipulasjon er forsøkt. Dessverre er denne type vranglås nesten uunngåelig. Noen data manipulasjon alltid vil være behov for et bitmap -indeksen , selv om det er bare å oppdatere indeksen . Behovet for data manipulasjon gjør denne fastlåste situasjonen typen vanskelig å unngå .
Ikke-indekserte Foreign Key
En unindexed utenlandske nøkkelen er en vanlig årsak til vranglås i Oracle , men også er en lett fast årsaken. Prosessen med denne fastlåste situasjonen innebærer en forelder rekord prøver å få tilgang til informasjon i en undertabellen . En undertabellen , eller barnet tabellen , er en tabell i den opprinnelige overordnede posten . Den unindexed utenlandske nøkkelen er i barnet tabellen . I et forsøk på å utføre vedlikehold , låses Oracle hele barnet tabellen , noe som øker muligheten for et fastlåst å oppstå . Den beste måten å sikre denne type vranglås oppstår ikke er å indeksere alle tastene.