משיב מוביל
OleDbConnection.Open() נתקע

שאלה
-
שלום,
יש לנו windows service בc# .net3.5 הכותב וקורא לקובץ access mdb. שמנו יצירה של OleDBConnection ו OleDbCommand בתוך using, ואף קראנו ל connection.Close() לפחות כמעט תמיד. במחשב של לקוח מסויים ראינו ש OleDBConnection.Open() נתקע לזמן רב (מעל חמש דקות) ואנחנו יודעים שזה קורה בSystem.Data.Common.UnsafeNativeMethods.IDBInitializeInitialize.Invoke(IntPtr pThis)
ידוע לנו על פעמיים שהבעיה קרתה ובשני המקרים יש יותר מThread אחד שתקוע באותו רגע בנקודה האמורה, באחד המקרים שניים מבין שלושת הת'רדים מגיעים לקריאת הOpen() בהפרש של כמה שניות, לא יודע לגבי הת'רד השלישי.
יש למישהו מושג? כבר חשבתי שאם לא אוכל לפתור זאת אנהל תור של פניות לדאטאבייס ואנסה כל כמה זמן לבצע פעולות שנכשלו בגלל הבעיה הנ"ל, אבל אני אפילו לא יודע אם כשהבעיה קורית היא לא תמשיך לקרות אח"כ כל הזמן.
מישהו נתקל בענין כזה?
תודה,
ליאור
- נערך על-ידי liorkovarsky יום חמישי 08 דצמבר 2011 10:00
- הועבר על-ידי Hengzhe Li יום רביעי 18 ינואר 2012 07:20 (מאת:Microsoft Visual C#)
תשובות
-
מה הסטאטוס של הבעיה?
יש סיכוי שזה עדיין רלוונטי?
אני ארשום תשובה קצרה: אם זה עדין רלוונטי וצריך פירוט אנא ידע אותנו
בניגוד לשרתי מסדי נתונים כמו SQL SERVER או ORACLE ואחרים הרי שתוכנת האקסס אינה שרת כי אפליקציה שניגשת לקובץ. אחד ההבדלים הגדולים הוא ניהול ריבוי משתמשים. ייתכן בהחלט שכל מה שאתם חווים זו נעילה של הקובץ בשל משתמשים אחרים שניגשו אליו. בעבודה רגילה ניתן לעבוד עם קובת אקסס גם באתר אינטרנט ולגשת אליו על ידי כמה משתמשים. מעשית מאחורי הקלעים המשתמשים ממתינים זה לזה (הניהול נופל בחלקו על שרת ה IIS). כאמור כפי שכתבתי מעל הבעיה קשורה לאיון המערכת ולקוד ככל הנראה. ייתכן שמעבר לשרת מסדי נתונים יעזור. אנחנו צריכם עוד מידע כדי לנטר את הבעיה בצורה נכונה ולעזור יותר ספציפית.
[Personal Site] [Blog] [Facebook]
- נערך על-ידי pituachMVP, Moderator יום שני 11 נובמבר 2013 05:46
- הוצע כתשובה על-ידי pituachMVP, Moderator יום שני 11 נובמבר 2013 05:46
- סומן כתשובה על-ידי Eran Sharvit יום חמישי 14 אוגוסט 2014 21:50
כל התגובות
-
-
מה הסטאטוס של הבעיה?
יש סיכוי שזה עדיין רלוונטי?
אני ארשום תשובה קצרה: אם זה עדין רלוונטי וצריך פירוט אנא ידע אותנו
בניגוד לשרתי מסדי נתונים כמו SQL SERVER או ORACLE ואחרים הרי שתוכנת האקסס אינה שרת כי אפליקציה שניגשת לקובץ. אחד ההבדלים הגדולים הוא ניהול ריבוי משתמשים. ייתכן בהחלט שכל מה שאתם חווים זו נעילה של הקובץ בשל משתמשים אחרים שניגשו אליו. בעבודה רגילה ניתן לעבוד עם קובת אקסס גם באתר אינטרנט ולגשת אליו על ידי כמה משתמשים. מעשית מאחורי הקלעים המשתמשים ממתינים זה לזה (הניהול נופל בחלקו על שרת ה IIS). כאמור כפי שכתבתי מעל הבעיה קשורה לאיון המערכת ולקוד ככל הנראה. ייתכן שמעבר לשרת מסדי נתונים יעזור. אנחנו צריכם עוד מידע כדי לנטר את הבעיה בצורה נכונה ולעזור יותר ספציפית.
[Personal Site] [Blog] [Facebook]
- נערך על-ידי pituachMVP, Moderator יום שני 11 נובמבר 2013 05:46
- הוצע כתשובה על-ידי pituachMVP, Moderator יום שני 11 נובמבר 2013 05:46
- סומן כתשובה על-ידי Eran Sharvit יום חמישי 14 אוגוסט 2014 21:50