一个事务复制的bug--更新丢失 续
阅读本文之前请参考 最近又做了一个case,环境是sql server 2008 R2. 客户添加了一个'replication support only'的订阅,之后发现现存订阅出现了更新丢失。 丢失的数据恰巧是添加订阅前的几秒钟内生成的。 我开始以为是log reader没有开启造成的,检查了dist
阅读本文之前请参考
最近又做了一个case,环境是sql server 2008 R2. 客户添加了一个'replication support only'的订阅,之后发现现存订阅出现了更新丢失。 丢失的数据恰巧是添加订阅前的几秒钟内生成的。
我开始以为是log reader没有开启造成的,检查了distribution database的MSlogreader_history
,发现期间log reader并没有停止过。
如果Log reader停止,那么添加订阅前的更新肯定是丢失了。因为产生的数据的LSN小于"添加订阅"的LSN, 并且distribution agent把"添加订阅"的LSN先传递到了订阅。可是log reader一直处于运行状态,那么还有什么可能呢? 如果log reader的效率很低,,没有即时地将数据更新传递到distribution agent,那么也会产生这个问题吧?我想理论上是这样的,如果效率非常低,可以等同于log reader没有运行! 那么如何证明这一点呢?reproduce的过程可能会很复杂,而且客户的磁盘性能也很好…
我想到了另外一种可能,这个问题实际上和log reader的工作方式有关系:
当log reader启动后,会去读取publication database的日志,如果一次读取完后,如果publication database的日志中仍然有需要处理的数据,log reader会继续读;如果读取后没有数据需要处理,log reader会休息一段时间, 时间长度为PollingInterval的值(默认为5秒中)。 那么我们假设这样的情景。
PollingInterval为五秒。Log reader启动后发现没有数据需要读取,开始休息。
在第1秒的时候,其中的article a产生了数据更新
在第2秒的时候,其中的article b产生了数据更新
在第3秒的时候,添加了一个非snapshot方式初始化的订阅。
在第4秒的时候,其中的article c产生了数据更新
在第5秒的时候,其中的article d产生了数据更新
同时log reader开始继续扫描日志, 我们就会发现第一秒和第二秒的数据更新丢失了。
更多信息
1 向任意一个包含'replication support only' 订阅的发布添加article时都可能会导致这个发布库的所有发布的所有现存订阅出现更新丢失的问题。
向不包含'replication support only'订阅的发布添加不会有这个问题。
2 如果在添加一个'replication support only'的订阅时 ,该发布对应的发布数据库的所有已存在订阅也会出现更新丢失的情况,无论这些都订阅通过何种方式初始化,或属于那个发布。
解决方法之前文章介绍的相同
解决办法
===
升级至sql servr 2012
如果您暂时没有办法升级,可以采用以下两种方法:
添加一个新的发布,将新的article或订阅添加到发布中。
更多信息
========
1 向任意一个包含’replication support only’ 订阅的发布添加article时, 都可能导致这个发布库的所有发布的所有现存订阅出现更新丢失的问题。 向不包含’replication support only’订阅的发布添加article不会有这个问题。
2 如果在添加一个’replication support only’的订阅时 ,该发布对应的发布数据库的所有发布的所有已存在订阅都会受到影响,无论这些订阅是通过何种方式初始化,或属于哪个发布。

핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

AI Hentai Generator
AI Hentai를 무료로 생성하십시오.

인기 기사

뜨거운 도구

메모장++7.3.1
사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전
중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기
강력한 PHP 통합 개발 환경

드림위버 CS6
시각적 웹 개발 도구

SublimeText3 Mac 버전
신 수준의 코드 편집 소프트웨어(SublimeText3)

뜨거운 주제











블리자드 Battle.net 업데이트가 45%에서 계속 멈춥니다. 어떻게 해결하나요? 최근 많은 사람들이 소프트웨어를 업데이트할 때 진행률이 45%에서 멈췄습니다. 여러 번 다시 시작해도 계속 멈춥니다. 그렇다면 이 상황을 해결하려면 어떻게 해야 할까요? 이 소프트웨어 튜토리얼은 더 많은 사람들에게 도움이 되기를 바라며 작업 단계를 공유할 것입니다. 블리자드 Battle.net 업데이트가 45%에서 계속 멈춥니다. 해결 방법 1. 클라이언트 1. 먼저 클라이언트가 공식 웹사이트에서 다운로드한 공식 버전인지 확인해야 합니다. 2. 그렇지 않은 경우 사용자는 아시아 서버 웹사이트에 들어가 다운로드할 수 있습니다. 3. 입력 후 오른쪽 상단의 다운로드를 클릭하세요. 참고: 설치할 때 중국어 간체를 선택하지 마십시오.

우리 사용자는 이 플랫폼을 사용할 때 일부 기능의 다양성을 이해할 수 있어야 합니다. 우리는 일부 노래의 가사가 매우 잘 쓰여져 있다는 것을 알고 있습니다. 때로는 여러 번 들어도 그 의미가 매우 심오하다고 느낄 때가 있기 때문에 그 의미를 이해하고 싶으면 직접 복사해서 카피라이팅으로 사용하고 싶을 때도 있습니다. 가사 복사하는 방법만 배우면 됩니다. 이러한 작업은 모두가 익숙할 것이라고 생각하지만 실제로 휴대폰에서 작업하는 것은 다소 어렵습니다. 따라서 오늘 편집자는 더 나은 이해를 돕기 위해. 위의 운영 경험 중 일부에 대한 좋은 설명이 있습니다. 마음에 드시면 꼭 오셔서 편집자와 함께 살펴보세요.

Angular.js는 동적 애플리케이션을 만들기 위해 자유롭게 액세스할 수 있는 JavaScript 플랫폼입니다. HTML 구문을 템플릿 언어로 확장하여 애플리케이션의 다양한 측면을 빠르고 명확하게 표현할 수 있습니다. Angular.js는 코드를 작성, 업데이트 및 테스트하는 데 도움이 되는 다양한 도구를 제공합니다. 또한 라우팅 및 양식 관리와 같은 많은 기능을 제공합니다. 이 가이드에서는 Ubuntu24에 Angular를 설치하는 방법에 대해 설명합니다. 먼저 Node.js를 설치해야 합니다. Node.js는 서버 측에서 JavaScript 코드를 실행할 수 있게 해주는 ChromeV8 엔진 기반의 JavaScript 실행 환경입니다. Ub에 있으려면

랜턴앤던전스는 2월 29일 업데이트가 확정되었으며, 업데이트 이후 랜턴앤던전스의 리마스터 버전이 출시될 예정이며, 리마스터 버전 역시 레전드 오브 나타와 연동될 예정이다. 직업 변경, 플레이어 직접 직업 변경, 던전 콘텐츠 확장, 새로운 던전 지역 오픈 등이 가능합니다. 모바일게임 업데이트 일정 랜턴과 던전 2월 29일 업데이트 : 리마스터 버전 ╳ '네자전설' 연계버전 주요 내용 신규 직업, 전직을 권유받은 이유는 무엇입니까? . 전직 후 랜턴 홀더도 멋진 기술을 많이 배울 수 있다고 들었습니다. 고로는 태국 바지가 뜨겁습니다! 나타의 전설이 함께 온다! 뜨거운 바퀴를 밟고 천지의 원을 손에 쥐고 ♫ ~ 현명하고 용감한 작은 영웅 나타와 어린 용 소녀가 곧 온다

친구의 컴퓨터에 이러한 오류가 있습니다. "이 PC"와 C 드라이브 파일을 열면 "Explorer.EXE Windows가 지정된 장치, 경로 또는 파일에 액세스할 수 없습니다. 프로젝트에 액세스할 수 있는 적절한 권한이 없을 수 있습니다. " 폴더, 파일, 이 컴퓨터, 휴지통 등을 포함하여 더블클릭하면 이런 창이 뜨는데, 마우스 오른쪽 버튼을 클릭해서 여는 것이 정상입니다. 이는 시스템 업데이트로 인해 발생합니다. 이러한 상황이 발생하면 아래 편집기에서 해결 방법을 알려드립니다. 1. 레지스트리 편집기 Win+R을 열고 regedit를 입력하거나 시작 메뉴를 마우스 오른쪽 버튼으로 클릭하여 실행하고 regedit를 입력합니다. 2. "Computer\HKEY_CLASSES_ROOT\PackagedCom\ClassInd" 레지스트리를 찾습니다.

MSI 그래픽 카드는 시장의 주류 그래픽 카드 브랜드입니다. 우리는 그래픽 카드가 성능을 달성하고 호환성을 보장하려면 드라이버를 설치해야 한다는 것을 알고 있습니다. 그렇다면 MSI 그래픽 카드 드라이버를 최신 버전으로 업데이트하는 방법은 무엇입니까? 일반적으로 MSI 그래픽 카드 드라이버는 공식 웹사이트에서 다운로드하여 설치할 수 있습니다. 자세한 내용은 아래에서 알아보세요. 그래픽 카드 드라이버 업데이트 방법: 1. 먼저 "MSI 공식 웹사이트"에 들어갑니다. 2. 입력 후 오른쪽 상단의 "검색" 버튼을 클릭하여 그래픽 카드 모델을 입력하세요. 3. 그런 다음 해당 그래픽 카드를 찾아 세부 정보 페이지를 클릭합니다. 4. 그런 다음 위의 "기술 지원" 옵션을 입력하세요. 5.마지막으로 "드라이버 및 다운로드"로 이동합니다.

Windows 업데이트로 인해 다음과 같은 문제가 발생할 수 있습니다. 1. 호환성 문제: 일부 응용 프로그램, 드라이버 또는 하드웨어 장치는 새 Windows 업데이트와 호환되지 않아 제대로 작동하지 않거나 충돌이 발생할 수 있습니다. 2. 성능 문제: 때때로 Windows 업데이트로 인해 시스템 속도가 느려지거나 성능 저하가 발생할 수 있습니다. 이는 실행하는 데 더 많은 리소스가 필요한 새로운 기능이나 개선 때문일 수 있습니다. 3. 시스템 안정성 문제: 일부 사용자는 Windows 업데이트를 설치한 후 시스템이 예기치 않은 충돌이나 블루 스크린 오류를 경험할 수 있다고 보고했습니다. 4. 데이터 손실: 드문 경우지만 Windows 업데이트로 인해 데이터 손실이나 파일 손상이 발생할 수 있습니다. 그렇기 때문에 중요한 업데이트를 하기 전에

Outlook에서 받은 편지함을 업데이트하는 데 문제가 있으면 생산성에 영향을 줄 수 있습니다. 이 문서에서는 문제를 해결하고 Outlook을 정상 상태로 되돌리는 데 도움이 되는 몇 가지 간단한 문제 해결 단계를 소개합니다. Outlook에서 받은 편지함 업데이트가 항상 중단되는 이유는 무엇입니까? Outlook에서 받은 편지함 업데이트가 중단될 수 있습니다. 일반적인 이유에는 네트워크 문제, 과도한 사서함 용량, 바이러스 백신 소프트웨어 또는 방화벽의 영향이 포함됩니다. 손상된 외부 플러그인이나 데이터 파일로 인해 이런 일이 발생할 수도 있습니다. 다음으로 이러한 가능한 원인을 자세히 살펴보고 해결 방법을 제공하겠습니다. Outlook 받은 편지함 업데이트 중단 수정 Outlook에서 받은 편지함을 업데이트할 수 없는 경우 아래 나열된 해결 방법을 참조하십시오. Outlook을 다시 시작합니다. 비활성화됨
