Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Разреженные файлы  [new]
DrNil
Member

Откуда:
Сообщений: 49
При попытке выполнить джоб Аналитики на MS SQL Server 2008 R2 наткнулся на ошибку:
Невозможно сделать файл "F:\MSSQL10_50.MSSQLSERVER\MSSQL\DATA\Base_1_SS20131022..ndf" разреженным

Диск F кластерный:
+

http://i065.radikal.ru/1310/7a/31621fa94d43.jpg


Что это за ошибка такая, подскажите.

К сообщению приложен файл. Размер - 97Kb
22 окт 13, 14:38    [15014991]     Ответить | Цитировать Сообщить модератору
 Re: Разреженные файлы  [new]
DrNil
Member

Откуда:
Сообщений: 49
Покопался в гугле на тему разреженных файлов.
Сделал скриншот. Вроде том поддерживает разрежённые файлы.
Что ещё надо скулю ?

К сообщению приложен файл. Размер - 97Kb
22 окт 13, 15:24    [15015338]     Ответить | Цитировать Сообщить модератору
 Re: Разреженные файлы  [new]
Glory
Member

Откуда:
Сообщений: 104751
DrNil
джоб Аналитики

Что это такое ?

DrNil
наткнулся на ошибку:

Где наткнулись то ?
22 окт 13, 15:38    [15015469]     Ответить | Цитировать Сообщить модератору
 Re: Разреженные файлы  [new]
DrNil
Member

Откуда:
Сообщений: 49
Glory
DrNil
джоб Аналитики

Что это такое ?

Задание, job:
dtexec /F "C:\Program Files (x86)\bla-bla-bla\Load_WH.dtsx"


Glory
DrNil
наткнулся на ошибку:

Где наткнулись то ?


В SQL Management Studio запустил вышеуказанное задание на выполнение. Задание отработало с ошибкой, полный текст которой следующий:

+
Дата 22.10.2013 15:40:45
Журнал Журнал заданий (Analytics Warehouse Processing Job - 123_OLAP)

Идентификатор шага 1
Сервер SQLONCLUST
Имя задания Analytics Warehouse Processing Job - 123_OLAP
Имя шага Analytics Warehouse Processing Job - 123_OLAP
Продолжительность 00:00:17
Серьезность Sql 0
Идентификатор Sql-сообщения 0
Оператору отправлено сообщение электронной почты
Оператору отправлено сообщение командой Net send
Оператору отправлено сообщение на пейджер
Предпринято повторов 0

Сообщение
Выполняется от имени пользователя: domain\sql_user....ядных систем (C) Корпорация Майкрософт (Microsoft Corporation), 2010. Все права защищены. Начало: 15:40:45 Выполнение: 2013-10-22 15:40:48.63 Источник: SQL Audit OnPreExecute Выполнение запроса "audit.up_Event_Package_OnBegin ?, null, ?, ?, ?, ?...".: 100% завершено Конец выполнения Ошибка: 2013-10-22 15:40:49.45 Код: 0x00000001 Источник: SCR Drop|Create Snapshot Описание: System.Reflection.TargetInvocationException: Адресат вызова создал исключение. ---> System.Data.SqlClient.SqlException: Невозможно создать моментальный снимок базы данных из-за ошибки ее запуска. Невозможно сделать файл "F:\MSSQL10_50.MSSQLSERVER\MSSQL\DATA\Base_1_SS20131022..ndf" разреженным. Убедитесь, что файловая система поддерживает разреженные файлы. в System.Data.SqlClient.SqlConnection.OnError(SqlException exception, Boolean breakConnection) в System.Data.SqlClient.SqlInternalConnection.OnError(SqlException exception, Boolean breakConnection) в System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj) в System.Data.SqlClient.TdsParser.Run(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj) в System.Data.SqlClient.SqlCommand.RunExecuteNonQueryTds(String methodName, Boolean async) в System.Data.SqlClient.SqlCommand.InternalExecuteNonQuery(DbAsyncResult result, String methodName, Boolean sendToPipe) в System.Data.SqlClient.SqlCommand.ExecuteNonQuery() в ST_f7566428fb8a4fc483d30fe67de36361.csproj.ScriptMain.Main() --- Конец трассировки внутреннего стека исключений --- в System.RuntimeMethodHandle._InvokeMethodFast(Object target, Object[] arguments, SignatureStruct& sig, MethodAttributes methodAttributes, RuntimeTypeHandle typeOwner) в System.RuntimeMethodHandle.InvokeMethodFast(Object target, Object[] arguments, Signature sig, MethodAttributes methodAttributes, RuntimeTypeHandle typeOwner) в System.Reflection.RuntimeMethodInfo.Invoke(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture, Boolean skipVisibilityChecks) в System.Reflection.RuntimeMethodInfo.Invoke(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture) в System.RuntimeType.InvokeMember(String name, BindingFlags bindingFlags, Binder binder, Object target, Object[] providedArgs, ParameterModifier[] modifiers, CultureInfo culture, String[] namedParams) в System.Type.InvokeMember(String name, BindingFlags invokeAttr, Binder binder, Object target, Object[] args, CultureInfo culture) в Microsoft.SqlServer.Dts.Tasks.ScriptTask.VSTATaskScriptingEngine.ExecuteScript() Конец ошибки Предупреждение: 2013-10-22 15:40:49.47 Код: 0x80019002 Источник: SEQ Load Warehouse Описание: Код предупреждения служб SSIS: DTS_W_MAXIMUMERRORCOUNTREACHED. Метод Execution завершен успешно, но число возникших ошибок (1) достигло максимально допустимого (1), что привело к сбою. Это происходит, когда количество ошибок достигает значения, определенного в свойстве MaximumErrorCount. Измените свойство MaximumErrorCount или устраните ошибки. Конец предупреждения Предупреждение: 2013-10-22 15:40:49.49 Код: 0x80019002 Источник: Load_WH Описание: Код предупреждения служб SSIS: DTS_W_MAXIMUMERRORCOUNTREACHED. Метод Execution завершен успешно, но число возникших ошибок (1) достигло максимально допустимого (1), что привело к сбою. Это происходит, когда количество ошибок достигает значения, определенного в свойстве MaximumErrorCount. Измените свойство MaximumErrorCount или устраните ошибки. Конец предупреждения Выполнение: 2013-10-22 15:40:49.92 Источник: SQL Audit OnPostExecute Выполнение запроса "audit.up_Event_Package_OnEnd @logID = ?".: 100% завершено Конец выполнения DTExec: завершено... Код завершения процесса 1. Шаг завершился с ошибкой.


Аналогичное задание выполняется ежедневно на другом сервере, но диски там локальные - всё ок.
22 окт 13, 15:54    [15015603]     Ответить | Цитировать Сообщить модератору
 Re: Разреженные файлы  [new]
Glory
Member

Откуда:
Сообщений: 104751
DrNil
dtexec /F "C:\Program Files (x86)\bla-bla-bla\Load_WH.dtsx"

И кто знает, что выполняет этот ваш пакет ?
22 окт 13, 15:56    [15015615]     Ответить | Цитировать Сообщить модератору
 Re: Разреженные файлы  [new]
Glory
Member

Откуда:
Сообщений: 104751
DrNil
но диски там локальные - всё ок.

А здесь - сетевой что ли ?
22 окт 13, 15:56    [15015622]     Ответить | Цитировать Сообщить модератору
 Re: Разреженные файлы  [new]
DrNil
Member

Откуда:
Сообщений: 49
Glory
DrNil
dtexec /F "C:\Program Files (x86)\bla-bla-bla\Load_WH.dtsx"

И кто знает, что выполняет этот ваш пакет ?


Достаточно того что он пытается сделать snaphot и у него это не получается.

Glory
DrNil
но диски там локальные - всё ок.

А здесь - сетевой что ли ?


Внимательный читатель обратит внимание на скриншот в первом посте. И на то, что там типа диска - "Кластерный диск".
22 окт 13, 15:59    [15015649]     Ответить | Цитировать Сообщить модератору
 Re: Разреженные файлы  [new]
Glory
Member

Откуда:
Сообщений: 104751
DrNil
Достаточно того что он пытается сделать snaphot и у него это не получается.

Кому достачно то ? Вы знаете, как именно он пытается это сделать ?

DrNil
Внимательный читатель обратит внимание на скриншот в первом посте. И на то, что там типа диска - "Кластерный диск".

Внимательный человек увидел вот это
"Невозможно создать моментальный снимок базы данных из-за ошибки ее запуска. "
И задает вопрос - база то запущена ? чтобы с нее можно сделать снимок то ?
22 окт 13, 16:04    [15015692]     Ответить | Цитировать Сообщить модератору
 Re: Разреженные файлы  [new]
DrNil
Member

Откуда:
Сообщений: 49
Glory
DrNil
Достаточно того что он пытается сделать snaphot и у него это не получается.

Кому достачно то ? Вы знаете, как именно он пытается это сделать ?

Нет, не знаю. Наставьте на путь истинный - как узнать и что сделать.

Glory
DrNil
Внимательный читатель обратит внимание на скриншот в первом посте. И на то, что там типа диска - "Кластерный диск".

Внимательный человек увидел вот это
"Невозможно создать моментальный снимок базы данных из-за ошибки ее запуска. "
И задает вопрос - база то запущена ? чтобы с нее можно сделать снимок то ?


Да, база запущена.
22 окт 13, 16:06    [15015712]     Ответить | Цитировать Сообщить модератору
 Re: Разреженные файлы  [new]
Glory
Member

Откуда:
Сообщений: 104751
DrNil
Нет, не знаю. Наставьте на путь истинный - как узнать и что сделать.

Открыть пакет и посмотреть код ?
Запустить Профайлер и отловить команду ?
22 окт 13, 16:08    [15015722]     Ответить | Цитировать Сообщить модератору
 Re: Разреженные файлы  [new]
DrNil
Member

Откуда:
Сообщений: 49
Glory,

Вот нашёл в пакете
+

            //create new snapshot
            sb.InitialCatalog = "master";
            string sql = GetSnapshotScript(dbName, snapshotsfx, sb);

            using (SqlConnection conn = new SqlConnection(sb.ConnectionString))
            {
                conn.Open();
                using(SqlCommand cmd = conn.CreateCommand())
                {
                    cmd.CommandText = sql;
                    cmd.CommandTimeout = 10800;
                    cmd.ExecuteNonQuery();
                }
                conn.Close();
            }


        private static string GetSnapshotScript(string dbName, string snapshotsfx, SqlConnectionStringBuilder sb)
        {
            string dbFileName = "";
            string sql = "CREATE DATABASE [" + GetSnapshotName(dbName, snapshotsfx) + "] ON ";

            bool isFirstFile = true;

            Server srv = new Server();
            srv.ConnectionContext.ConnectionString = sb.ConnectionString;
            srv.ConnectionContext.Connect();

            foreach (FileGroup fg in srv.Databases[dbName].FileGroups)
            {
                foreach (DataFile dbf in fg.Files)
                {
                    if (dbf.IsOffline)
                        continue;
                    System.IO.FileInfo fi = new System.IO.FileInfo(dbf.FileName);
                    
                    string ext = (fi.Extension == "") ? "ss" : fi.Extension;

                    dbFileName = System.IO.Path.Combine(fi.DirectoryName, fi.Name.Split('.')[0] + "_SS" + snapshotsfx + "." + ext);
                    
                    if (!isFirstFile)
                    {
                        sql += ", \n";
                    }
                    else
                    {
                        isFirstFile = false;
                    }

                    sql += "( NAME = " + dbf.Name + ", FILENAME = '" + dbFileName + "')";

                }
            }

            sql += "\n AS SNAPSHOT OF [" + dbName + "]";
            return sql;
        }
22 окт 13, 16:16    [15015822]     Ответить | Цитировать Сообщить модератору
 Re: Разреженные файлы  [new]
alexeyvg
Member

Откуда: Moscow
Сообщений: 31964
DrNil,

А сервис-паки стоят?

http://support.microsoft.com/kb/2574699
22 окт 13, 16:22    [15015870]     Ответить | Цитировать Сообщить модератору
 Re: Разреженные файлы  [new]
DrNil
Member

Откуда:
Сообщений: 49
alexeyvg,

Любопытно.
Use Base select is_sparse , physical_name from sys.database_files

на рабочей базе показал что is_sparse = 0

Копаю дальше.
22 окт 13, 16:34    [15016004]     Ответить | Цитировать Сообщить модератору
 Re: Разреженные файлы  [new]
alexeyvg
Member

Откуда: Moscow
Сообщений: 31964
DrNil
Любопытно.
Use Base select is_sparse , physical_name from sys.database_files


на рабочей базе показал что is_sparse = 0
Ну да, хотя ошибка происходит при создании новой базы с снапшётом, для чего сиквел делает файлы разреженными.

Но в общем может как то по этому пути получится найти ошибку...
22 окт 13, 16:42    [15016090]     Ответить | Цитировать Сообщить модератору
 Re: Разреженные файлы  [new]
DrNil
Member

Откуда:
Сообщений: 49
Похоже я рано радовался.
На другом сервере, где задание отрабатывается нормально, is_sparse у базы также = 0
22 окт 13, 16:56    [15016264]     Ответить | Цитировать Сообщить модератору
 Re: Разреженные файлы  [new]
andrey odegov
Member

Откуда:
Сообщений: 473
в errorlog sql server-а что-нибудь есть заслуживающее внимания?
22 окт 13, 20:20    [15017173]     Ответить | Цитировать Сообщить модератору
 Re: Разреженные файлы  [new]
Mind
Member

Откуда: Лучший город на Земле
Сообщений: 2322
DrNil
При попытке выполнить джоб Аналитики на MS SQL Server 2008 R2 наткнулся на ошибку:
Невозможно сделать файл "F:\MSSQL10_50.MSSQLSERVER\MSSQL\DATA\Base_1_SS20131022..ndf" разреженным

Диск F кластерный:
Посмотрите какие права у учетки SQL Server'а на диск F.
22 окт 13, 22:27    [15017546]     Ответить | Цитировать Сообщить модератору
 Re: Разреженные файлы  [new]
DrNil
Member

Откуда:
Сообщений: 49
Mind,

человечище!! Спасибо огромное! В этом-то и была проблема. Дал пользователю SQL Server'а все права на все кластерные диски и всё взлетело.
Благодарствую!
23 окт 13, 10:08    [15018512]     Ответить | Цитировать Сообщить модератору
 Re: Разреженные файлы  [new]
Mnior
Member

Откуда: Кишинёв
Сообщений: 6724
Мда, кто-то не заморачивается на анализе Exception-ов.
Хотя может галимый перевод:
Невозможно создать разреженный файл "F:\MSSQL10_50.MSSQLSERVER\MSSQL\DATA\Base_1_SS20131022..ndf"
23 окт 13, 22:23    [15023323]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить