Showing posts with label application. Show all posts
Showing posts with label application. Show all posts

Friday, March 30, 2012

Modifing Data in SQL

Hello, and sorry for the vauge title.

Basically, I am building a web application where people can enter in raffles. So I set up a SQL DataBase, where I have a table for each raffel going on. In each, I have a UserName collum, and a ID collum, the ID being the key collum. On my page, I basically have a TextBox and a Button.


I know I add a SqlDataSorce to the page, and use a INSERT command, however I am not sure how to parse this in a way to make it so that when you type your UserName into the TextBox, and then click the submit button, it will create a row using the UserName.

Thanks for the help!

I'm assuming that your key column is an identity column, so we don't have to create a new key.

You have a seperate table for each raffle, and each one has its own username column? I suspect that you're better off with one table for all raffles, and a key field for the raffle that a row is for. That way you don't have to create a new table every time someone does a raffle.

Let's assume that the function GetTable() returns the name of the table for the raffle the user's signing up for.

source.InsertCommand = "Insert into " + GetTable() + "(UserName) Values(@.UserName)"

Then bind the data source to your textbox.

|||

Thanks, but I don't get the last part, "Then bind the data source to your textbox." Because if you do that, then it won't interact with the database.

And if you ment it the other way around, (Bind the textbox to the data source), I can't. You can't bind textboxes to datasources.

Help?

|||

I don't do much with SqlDataSources. If it were a straight SqlCommand, then inthe click event of your button, I'd have

cmd.Parameters["@.UserName"].value = txtUserName.Text;

cmd.ExecuteNonQuery();

|||

Sorry if this is really obvious, and I'm just stupid, but I can't figure out what to use for "cmd". I think you are refering to the SqlCommand, (Insert), but that doesn't work. (I've also tried InsertCommand).

Sorry that I can't get this.Stick out tongue

Monday, March 26, 2012

Mobile sdf File created on Server

Hi there,

Background: I've created an application to run on windows mobile 5.0 devices. It replicates to a publication on a server. To do this it goes through ASP.net. This creates the database on the Mobile Devices.

Issue: Problem is the initial download of the database is taking 2hours plus to replicate (create) for the first time. So I'm trying to create the .sdf file on the server, zip it, and send it across to the handheld. All subsequent replications take about 5 minutes.

Question: Does anyone know how, or have examples for creating a Mobile CE database on the server. I need to create it using ASP.net and go through a pre-existing publication where a hostname used for filtering.

http://msdn2.microsoft.com/en-us/library/ms173009.aspx explains how to create this in SQL Server Management Stuidio. How do you do the same thing over ASP?

Can this be done using SMO? How do you create a SQLServerCompactEdition database using normal .NET Framework? Thanks for your help!!

Is it possible to access System.Data.SqlServerCe namespace without using the .NET Compact Framework?

So if I wanted to access the assembly in a VB.NET Windows App inside the .NET Framework, is this possible?

|||

Yes, SQL CE 3.1 allows you to do that. There’s a special version of SQL CE provider for desktop framework.

|||You can run code like in this sample (http://msdn2.microsoft.com/en-us/library/system.data.sqlserverce.sqlcereplication.synchronize.aspx

on your web server. create the file to the local file system and zip it. Then give the device the URL to the .zip file and your .NET Compact Framework app can the download the .zip file using HttpWebRequest class and unzip.

|||

So the problem i was having was in using an assembly that came with the compact framework. The System.Data.SqlServerCE.dll file is located in at least two places on my machine. One in the CE and one in the Common folder...both have the same name and version number.

I changed the reference from pointing at the CE version to the normal version and it cleared up the problem. Thanks for the responses, I'm still not sure what the differences in the assemblies are.

Mobile sdf File created on Server

Hi there,

Background: I've created an application to run on windows mobile 5.0 devices. It replicates to a publication on a server. To do this it goes through ASP.net. This creates the database on the Mobile Devices.

Issue: Problem is the initial download of the database is taking 2hours plus to replicate (create) for the first time. So I'm trying to create the .sdf file on the server, zip it, and send it across to the handheld. All subsequent replications take about 5 minutes.

Question: Does anyone know how, or have examples for creating a Mobile CE database on the server. I need to create it using ASP.net and go through a pre-existing publication where a hostname used for filtering.

http://msdn2.microsoft.com/en-us/library/ms173009.aspx explains how to create this in SQL Server Management Stuidio. How do you do the same thing over ASP?

Can this be done using SMO? How do you create a SQLServerCompactEdition database using normal .NET Framework? Thanks for your help!!

Is it possible to access System.Data.SqlServerCe namespace without using the .NET Compact Framework?

So if I wanted to access the assembly in a VB.NET Windows App inside the .NET Framework, is this possible?

|||

Yes, SQL CE 3.1 allows you to do that. There’s a special version of SQL CE provider for desktop framework.

|||You can run code like in this sample (http://msdn2.microsoft.com/en-us/library/system.data.sqlserverce.sqlcereplication.synchronize.aspx

on your web server. create the file to the local file system and zip it. Then give the device the URL to the .zip file and your .NET Compact Framework app can the download the .zip file using HttpWebRequest class and unzip.

|||

So the problem i was having was in using an assembly that came with the compact framework. The System.Data.SqlServerCE.dll file is located in at least two places on my machine. One in the CE and one in the Common folder...both have the same name and version number.

I changed the reference from pointing at the CE version to the normal version and it cleared up the problem. Thanks for the responses, I'm still not sure what the differences in the assemblies are.

sql

Friday, March 23, 2012

Mobile Application Enquiry

Hi,

I've found guides on creating a mobile application but everything is on 1 computer.

What i'd like to do is to seperate into 3 parts for added security.

One is used to store the Database.

One is used as an IIS Server (Web Server).

One is used as a Deployment Server.

Is there a step-by-step guide to this setup?

Though there is no step-by-step guide separately for multi-machine or multi-box scenario the same step-by-step guide @. http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnppcgen/html/med302_msdn_sql_mobile.asp can be taken for configuring the merge replication. Please note that you can not use the default anonymous account with IIS in multi-box mode as default anonymous account in IIS is IUSR_MachineName which is a local user and is not understandable by other boxes in the infrastructure.

Thanks,

Laxmi Narsimha Rao ORUGANTI, MSFT, SQL Mobile, Microsoft Corporation

|||

Thx.
Its a good guide but still there are certain areas which i'm not sure where i should be working on for the split server configuration. Might i suggest for a guide to be done?

Also is there a step-by-step guide for Data Retrieval on Smartphones using Visual Basic.NET?

Thanks again.

|||

May be this thread @. http://forums.microsoft.com/MSDN/ShowPost.aspx?PostID=213973&SiteID=1 can help you!

Thanks,

Laxmi Narsimha Rao ORUGANTI, MSFT, SQL Mobile, Microsoft Corporation

MMC.EXE -Application Error

--Using SQL Server 2000 standard edition with SP3 on Windows 2000 Server
I am getting an error when I try to copy the data from a table to a text fil
e using a DTS Package. I am simply creating a connection to the database (s
ource) where the table exists and then creating another connection to the te
xt file (destination). The
properties of the text file are comma for the column delimiter, double quote
s for the text qualifers and first row contains column names. So after crea
ting the two connections I then create the 'Transform Data Task' (black arro
w going from the source to
the destination). I then go to the properties of the 'Transform Data Task'.
On the 'Source' tab I select the table I want to copy. I can preview the
data with no problems. I then click on the 'Destination' tab to define the
colmns. I click 'populate
from source' (it populates from the source) and then click 'execute'. This
is where the problem happens. It doesn't define the columns in the 'Destina
tion' tab. It is blank in the white space below. When I click the 'Define
Columns' button to try def
ine the columns again, I receive the following error in a pop up window:
In the Title Bar of the pop up window it says: MMC.EXE - Application Error
In the main part of the window it says: The instruction at 0x4173d23a" refe
renced memory at "0x01521e90". The memory could not be "written". Click on
OK to terminate the program
I click OK, and then it boots me out of Enterprise Manager.
In the 'disconnected edit' properties for the text file destination connecti
on, I have set the OLE DB Properties 'max characters per delimited column' f
rom 255 to 8000 to set if that is the problem since I have some columns that
are varchar 255. Still ge
t the same error.
I appreciate any help in advance to try resolving this problem.This error occurs when you apply SP3 or SP3a to your server. Article 814113
addresses this problem and then tells you to go to article 821277 for the p
atch downloads. You have to apply a cumulative security patch which creates
a problem with passwords o
n sql logins so you have to apply a small patch to fix that. I applied both
hotfixes in a test environment and it fixed the error. Hopefully it doesn'
t break anything else. Also, you have to apply these hotfixes to sql server
2000 with SP3 or SP3a and
also to workstations who are just running the client.
"IKE" wrote:

> --Using SQL Server 2000 standard edition with SP3 on Windows 2000 Server
> I am getting an error when I try to copy the data from a table to a text file usin
g a DTS Package. I am simply creating a connection to the database (source) where t
he table exists and then creating another connection to the text file (destination).
T
he properties of the text file are comma for the column delimiter, double qu
otes for the text qualifers and first row contains column names. So after c
reating the two connections I then create the 'Transform Data Task' (black a
rrow going from the source
to the destination). I then go to the properties of the 'Transform Data Tas
k'. On the 'Source' tab I select the table I want to copy. I can preview t
he data with no problems. I then click on the 'Destination' tab to define t
he colmns. I click 'popula
te from source' (it populates from the source) and then click 'execute'. Th
is is where the problem happens. It doesn't define the columns in the 'Dest
ination' tab. It is blank in the white space below. When I click the 'Defi
ne Columns' button to try d
efine the columns again, I receive the following error in a pop up window:
> In the Title Bar of the pop up window it says: MMC.EXE - Application Erro
r
> In the main part of the window it says: The instruction at 0x4173d23a" re
ferenced memory at "0x01521e90". The memory could not be "written". Click
on OK to terminate the program
> I click OK, and then it boots me out of Enterprise Manager.
> In the 'disconnected edit' properties for the text file destination connection, I
have set the OLE DB Properties 'max characters per delimited column' from 255 to 800
0 to set if that is the problem since I have some columns that are varchar 255. Sti
ll
get the same error.
> I appreciate any help in advance to try resolving this problem.
>
>

MMC.EXE -Application Error

--Using SQL Server 2000 standard edition with SP3 on Windows 2000 Server
I am getting an error when I try to copy the data from a table to a text file using a DTS Package. I am simply creating a connection to the database (source) where the table exists and then creating another connection to the text file (destination). The
properties of the text file are comma for the column delimiter, double quotes for the text qualifers and first row contains column names. So after creating the two connections I then create the 'Transform Data Task' (black arrow going from the source to
the destination). I then go to the properties of the 'Transform Data Task'. On the 'Source' tab I select the table I want to copy. I can preview the data with no problems. I then click on the 'Destination' tab to define the colmns. I click 'populate
from source' (it populates from the source) and then click 'execute'. This is where the problem happens. It doesn't define the columns in the 'Destination' tab. It is blank in the white space below. When I click the 'Define Columns' button to try def
ine the columns again, I receive the following error in a pop up window:
In the Title Bar of the pop up window it says: MMC.EXE - Application Error
In the main part of the window it says: The instruction at 0x4173d23a" referenced memory at "0x01521e90". The memory could not be "written". Click on OK to terminate the program
I click OK, and then it boots me out of Enterprise Manager.
In the 'disconnected edit' properties for the text file destination connection, I have set the OLE DB Properties 'max characters per delimited column' from 255 to 8000 to set if that is the problem since I have some columns that are varchar 255. Still ge
t the same error.
I appreciate any help in advance to try resolving this problem.
This error occurs when you apply SP3 or SP3a to your server. Article 814113 addresses this problem and then tells you to go to article 821277 for the patch downloads. You have to apply a cumulative security patch which creates a problem with passwords o
n sql logins so you have to apply a small patch to fix that. I applied both hotfixes in a test environment and it fixed the error. Hopefully it doesn't break anything else. Also, you have to apply these hotfixes to sql server 2000 with SP3 or SP3a and
also to workstations who are just running the client.
"IKE" wrote:

> --Using SQL Server 2000 standard edition with SP3 on Windows 2000 Server
> I am getting an error when I try to copy the data from a table to a text file using a DTS Package. I am simply creating a connection to the database (source) where the table exists and then creating another connection to the text file (destination). T
he properties of the text file are comma for the column delimiter, double quotes for the text qualifers and first row contains column names. So after creating the two connections I then create the 'Transform Data Task' (black arrow going from the source
to the destination). I then go to the properties of the 'Transform Data Task'. On the 'Source' tab I select the table I want to copy. I can preview the data with no problems. I then click on the 'Destination' tab to define the colmns. I click 'popula
te from source' (it populates from the source) and then click 'execute'. This is where the problem happens. It doesn't define the columns in the 'Destination' tab. It is blank in the white space below. When I click the 'Define Columns' button to try d
efine the columns again, I receive the following error in a pop up window:
> In the Title Bar of the pop up window it says: MMC.EXE - Application Error
> In the main part of the window it says: The instruction at 0x4173d23a" referenced memory at "0x01521e90". The memory could not be "written". Click on OK to terminate the program
> I click OK, and then it boots me out of Enterprise Manager.
> In the 'disconnected edit' properties for the text file destination connection, I have set the OLE DB Properties 'max characters per delimited column' from 255 to 8000 to set if that is the problem since I have some columns that are varchar 255. Still
get the same error.
> I appreciate any help in advance to try resolving this problem.
>
>

Monday, March 19, 2012

Mitigate slow I/O during Checkpoint?

Hi,
We have a moderately sized (100GB) database which is running on a
dedicated SQL Server. Our application is a mixture of OLTP and OLAP,
and we've recently begun an effort to speed up the performance by
cleaning up some poorly written queries, reconfiguring indexes, etc.
One of the things we've noticed while running Performance Monitor is
that when SQL Server issues a checkpoint (every 80 seconds or so during
peak production times), the write queue on the disk array containing our
data files goes from an average length of about 0.2 to about 100 and
stays there for the duration of the checkpoint, typically about 15
seconds or so. During this time queries which normally execute very
quickly (50ms or so), will sometimes require a second or more to
complete.
We opened a case with Microsoft, and the first thing they had us do was
to move our log files to a different disk array, but that didn't seem to
have any effect. We still haven't moved the log files for tempdb,
master, etc., but I wouldn't think those would matter nearly as much as
the one for our datafile. Subsequent suggestions from them don't seem
to have helped either.
Is this normal behavior? Are we I/O bound and simply require a faster
disk subsystem? Is there something in our hardware configuration which
can/should be changed to help out? Are there any SQL configuration
settings we could change to either reduce or eliminate the problem? Any
suggestions would be greatly appreciated.
Our server configuration is as follows:
Dell 2650
Dual 2.6GHz Xeon
2GB RAM
(3) 73GB 10K drives RAID 5 (OS & Data File Logs)
Powervault 220 w/14 36GB 15K drives RAID 5 (Data Files & SQL System
Logs)
Windows Server 2003
SQL 2000 Enterprise w/SP3
Thanks,
Chris
If responding via e-mail, place a period between my first and last name.
The only way I have ever been able to solve the checkpoint IO bottleneck was
to install SQL to a SAN with a decent sized write cache. Fibre channel is
full duplex so the writes do not eat all the bus bandwidth. A large cache
can absorb a checkpoint and write it to the disks in the background.
Typical SCSI controllers with 64MB or 128 MB of cache will always be
overwhelmed in a production environment by a sufficiently large checkpoint.
Geoff N. Hiten
Microsoft SQL Server MVP
Senior Database Administrator
"Chris Birk" <chrisbirk@.gmail.com> wrote in message
news:Xns961A7E02A1B16chrisbirkgmailcom@.207.46.248. 16...
> Hi,
> We have a moderately sized (100GB) database which is running on a
> dedicated SQL Server. Our application is a mixture of OLTP and OLAP,
> and we've recently begun an effort to speed up the performance by
> cleaning up some poorly written queries, reconfiguring indexes, etc.
> One of the things we've noticed while running Performance Monitor is
> that when SQL Server issues a checkpoint (every 80 seconds or so during
> peak production times), the write queue on the disk array containing our
> data files goes from an average length of about 0.2 to about 100 and
> stays there for the duration of the checkpoint, typically about 15
> seconds or so. During this time queries which normally execute very
> quickly (50ms or so), will sometimes require a second or more to
> complete.
> We opened a case with Microsoft, and the first thing they had us do was
> to move our log files to a different disk array, but that didn't seem to
> have any effect. We still haven't moved the log files for tempdb,
> master, etc., but I wouldn't think those would matter nearly as much as
> the one for our datafile. Subsequent suggestions from them don't seem
> to have helped either.
> Is this normal behavior? Are we I/O bound and simply require a faster
> disk subsystem? Is there something in our hardware configuration which
> can/should be changed to help out? Are there any SQL configuration
> settings we could change to either reduce or eliminate the problem? Any
> suggestions would be greatly appreciated.
> Our server configuration is as follows:
> Dell 2650
> Dual 2.6GHz Xeon
> 2GB RAM
> (3) 73GB 10K drives RAID 5 (OS & Data File Logs)
> Powervault 220 w/14 36GB 15K drives RAID 5 (Data Files & SQL System
> Logs)
> Windows Server 2003
> SQL 2000 Enterprise w/SP3
> Thanks,
> Chris
> --
> If responding via e-mail, place a period between my first and last name.
|||It appears you application is very write-intensive. Consider placing data
files on RAID 10.
Hope this helps.
Dan Guzman
SQL Server MVP
"Chris Birk" <chrisbirk@.gmail.com> wrote in message
news:Xns961A7E02A1B16chrisbirkgmailcom@.207.46.248. 16...
> Hi,
> We have a moderately sized (100GB) database which is running on a
> dedicated SQL Server. Our application is a mixture of OLTP and OLAP,
> and we've recently begun an effort to speed up the performance by
> cleaning up some poorly written queries, reconfiguring indexes, etc.
> One of the things we've noticed while running Performance Monitor is
> that when SQL Server issues a checkpoint (every 80 seconds or so during
> peak production times), the write queue on the disk array containing our
> data files goes from an average length of about 0.2 to about 100 and
> stays there for the duration of the checkpoint, typically about 15
> seconds or so. During this time queries which normally execute very
> quickly (50ms or so), will sometimes require a second or more to
> complete.
> We opened a case with Microsoft, and the first thing they had us do was
> to move our log files to a different disk array, but that didn't seem to
> have any effect. We still haven't moved the log files for tempdb,
> master, etc., but I wouldn't think those would matter nearly as much as
> the one for our datafile. Subsequent suggestions from them don't seem
> to have helped either.
> Is this normal behavior? Are we I/O bound and simply require a faster
> disk subsystem? Is there something in our hardware configuration which
> can/should be changed to help out? Are there any SQL configuration
> settings we could change to either reduce or eliminate the problem? Any
> suggestions would be greatly appreciated.
> Our server configuration is as follows:
> Dell 2650
> Dual 2.6GHz Xeon
> 2GB RAM
> (3) 73GB 10K drives RAID 5 (OS & Data File Logs)
> Powervault 220 w/14 36GB 15K drives RAID 5 (Data Files & SQL System
> Logs)
> Windows Server 2003
> SQL 2000 Enterprise w/SP3
> Thanks,
> Chris
> --
> If responding via e-mail, place a period between my first and last name.

Mitigate slow I/O during Checkpoint?

Hi,
We have a moderately sized (100GB) database which is running on a
dedicated SQL Server. Our application is a mixture of OLTP and OLAP,
and we've recently begun an effort to speed up the performance by
cleaning up some poorly written queries, reconfiguring indexes, etc.
One of the things we've noticed while running Performance Monitor is
that when SQL Server issues a checkpoint (every 80 seconds or so during
peak production times), the write queue on the disk array containing our
data files goes from an average length of about 0.2 to about 100 and
stays there for the duration of the checkpoint, typically about 15
seconds or so. During this time queries which normally execute very
quickly (50ms or so), will sometimes require a second or more to
complete.
We opened a case with Microsoft, and the first thing they had us do was
to move our log files to a different disk array, but that didn't seem to
have any effect. We still haven't moved the log files for tempdb,
master, etc., but I wouldn't think those would matter nearly as much as
the one for our datafile. Subsequent suggestions from them don't seem
to have helped either.
Is this normal behavior? Are we I/O bound and simply require a faster
disk subsystem? Is there something in our hardware configuration which
can/should be changed to help out? Are there any SQL configuration
settings we could change to either reduce or eliminate the problem? Any
suggestions would be greatly appreciated.
Our server configuration is as follows:
Dell 2650
Dual 2.6GHz Xeon
2GB RAM
(3) 73GB 10K drives RAID 5 (OS & Data File Logs)
Powervault 220 w/14 36GB 15K drives RAID 5 (Data Files & SQL System
Logs)
Windows Server 2003
SQL 2000 Enterprise w/SP3
Thanks,
Chris
--
If responding via e-mail, place a period between my first and last name.The only way I have ever been able to solve the checkpoint IO bottleneck was
to install SQL to a SAN with a decent sized write cache. Fibre channel is
full duplex so the writes do not eat all the bus bandwidth. A large cache
can absorb a checkpoint and write it to the disks in the background.
Typical SCSI controllers with 64MB or 128 MB of cache will always be
overwhelmed in a production environment by a sufficiently large checkpoint.
Geoff N. Hiten
Microsoft SQL Server MVP
Senior Database Administrator
"Chris Birk" <chrisbirk@.gmail.com> wrote in message
news:Xns961A7E02A1B16chrisbirkgmailcom@.207.46.248.16...
> Hi,
> We have a moderately sized (100GB) database which is running on a
> dedicated SQL Server. Our application is a mixture of OLTP and OLAP,
> and we've recently begun an effort to speed up the performance by
> cleaning up some poorly written queries, reconfiguring indexes, etc.
> One of the things we've noticed while running Performance Monitor is
> that when SQL Server issues a checkpoint (every 80 seconds or so during
> peak production times), the write queue on the disk array containing our
> data files goes from an average length of about 0.2 to about 100 and
> stays there for the duration of the checkpoint, typically about 15
> seconds or so. During this time queries which normally execute very
> quickly (50ms or so), will sometimes require a second or more to
> complete.
> We opened a case with Microsoft, and the first thing they had us do was
> to move our log files to a different disk array, but that didn't seem to
> have any effect. We still haven't moved the log files for tempdb,
> master, etc., but I wouldn't think those would matter nearly as much as
> the one for our datafile. Subsequent suggestions from them don't seem
> to have helped either.
> Is this normal behavior? Are we I/O bound and simply require a faster
> disk subsystem? Is there something in our hardware configuration which
> can/should be changed to help out? Are there any SQL configuration
> settings we could change to either reduce or eliminate the problem? Any
> suggestions would be greatly appreciated.
> Our server configuration is as follows:
> Dell 2650
> Dual 2.6GHz Xeon
> 2GB RAM
> (3) 73GB 10K drives RAID 5 (OS & Data File Logs)
> Powervault 220 w/14 36GB 15K drives RAID 5 (Data Files & SQL System
> Logs)
> Windows Server 2003
> SQL 2000 Enterprise w/SP3
> Thanks,
> Chris
> --
> If responding via e-mail, place a period between my first and last name.|||It appears you application is very write-intensive. Consider placing data
files on RAID 10.
--
Hope this helps.
Dan Guzman
SQL Server MVP
"Chris Birk" <chrisbirk@.gmail.com> wrote in message
news:Xns961A7E02A1B16chrisbirkgmailcom@.207.46.248.16...
> Hi,
> We have a moderately sized (100GB) database which is running on a
> dedicated SQL Server. Our application is a mixture of OLTP and OLAP,
> and we've recently begun an effort to speed up the performance by
> cleaning up some poorly written queries, reconfiguring indexes, etc.
> One of the things we've noticed while running Performance Monitor is
> that when SQL Server issues a checkpoint (every 80 seconds or so during
> peak production times), the write queue on the disk array containing our
> data files goes from an average length of about 0.2 to about 100 and
> stays there for the duration of the checkpoint, typically about 15
> seconds or so. During this time queries which normally execute very
> quickly (50ms or so), will sometimes require a second or more to
> complete.
> We opened a case with Microsoft, and the first thing they had us do was
> to move our log files to a different disk array, but that didn't seem to
> have any effect. We still haven't moved the log files for tempdb,
> master, etc., but I wouldn't think those would matter nearly as much as
> the one for our datafile. Subsequent suggestions from them don't seem
> to have helped either.
> Is this normal behavior? Are we I/O bound and simply require a faster
> disk subsystem? Is there something in our hardware configuration which
> can/should be changed to help out? Are there any SQL configuration
> settings we could change to either reduce or eliminate the problem? Any
> suggestions would be greatly appreciated.
> Our server configuration is as follows:
> Dell 2650
> Dual 2.6GHz Xeon
> 2GB RAM
> (3) 73GB 10K drives RAID 5 (OS & Data File Logs)
> Powervault 220 w/14 36GB 15K drives RAID 5 (Data Files & SQL System
> Logs)
> Windows Server 2003
> SQL 2000 Enterprise w/SP3
> Thanks,
> Chris
> --
> If responding via e-mail, place a period between my first and last name.

Mitigate slow I/O during Checkpoint?

Hi,
We have a moderately sized (100GB) database which is running on a
dedicated SQL Server. Our application is a mixture of OLTP and OLAP,
and we've recently begun an effort to speed up the performance by
cleaning up some poorly written queries, reconfiguring indexes, etc.
One of the things we've noticed while running Performance Monitor is
that when SQL Server issues a checkpoint (every 80 seconds or so during
peak production times), the write queue on the disk array containing our
data files goes from an average length of about 0.2 to about 100 and
stays there for the duration of the checkpoint, typically about 15
seconds or so. During this time queries which normally execute very
quickly (50ms or so), will sometimes require a second or more to
complete.
We opened a case with Microsoft, and the first thing they had us do was
to move our log files to a different disk array, but that didn't seem to
have any effect. We still haven't moved the log files for tempdb,
master, etc., but I wouldn't think those would matter nearly as much as
the one for our datafile. Subsequent suggestions from them don't seem
to have helped either.
Is this normal behavior? Are we I/O bound and simply require a faster
disk subsystem? Is there something in our hardware configuration which
can/should be changed to help out? Are there any SQL configuration
settings we could change to either reduce or eliminate the problem? Any
suggestions would be greatly appreciated.
Our server configuration is as follows:
Dell 2650
Dual 2.6GHz Xeon
2GB RAM
(3) 73GB 10K drives RAID 5 (OS & Data File Logs)
Powervault 220 w/14 36GB 15K drives RAID 5 (Data Files & SQL System
Logs)
Windows Server 2003
SQL 2000 Enterprise w/SP3
Thanks,
Chris
If responding via e-mail, place a period between my first and last name.The only way I have ever been able to solve the checkpoint IO bottleneck was
to install SQL to a SAN with a decent sized write cache. Fibre channel is
full duplex so the writes do not eat all the bus bandwidth. A large cache
can absorb a checkpoint and write it to the disks in the background.
Typical SCSI controllers with 64MB or 128 MB of cache will always be
overwhelmed in a production environment by a sufficiently large checkpoint.
Geoff N. Hiten
Microsoft SQL Server MVP
Senior Database Administrator
"Chris Birk" <chrisbirk@.gmail.com> wrote in message
news:Xns961A7E02A1B16chrisbirkgmailcom@.2
07.46.248.16...
> Hi,
> We have a moderately sized (100GB) database which is running on a
> dedicated SQL Server. Our application is a mixture of OLTP and OLAP,
> and we've recently begun an effort to speed up the performance by
> cleaning up some poorly written queries, reconfiguring indexes, etc.
> One of the things we've noticed while running Performance Monitor is
> that when SQL Server issues a checkpoint (every 80 seconds or so during
> peak production times), the write queue on the disk array containing our
> data files goes from an average length of about 0.2 to about 100 and
> stays there for the duration of the checkpoint, typically about 15
> seconds or so. During this time queries which normally execute very
> quickly (50ms or so), will sometimes require a second or more to
> complete.
> We opened a case with Microsoft, and the first thing they had us do was
> to move our log files to a different disk array, but that didn't seem to
> have any effect. We still haven't moved the log files for tempdb,
> master, etc., but I wouldn't think those would matter nearly as much as
> the one for our datafile. Subsequent suggestions from them don't seem
> to have helped either.
> Is this normal behavior? Are we I/O bound and simply require a faster
> disk subsystem? Is there something in our hardware configuration which
> can/should be changed to help out? Are there any SQL configuration
> settings we could change to either reduce or eliminate the problem? Any
> suggestions would be greatly appreciated.
> Our server configuration is as follows:
> Dell 2650
> Dual 2.6GHz Xeon
> 2GB RAM
> (3) 73GB 10K drives RAID 5 (OS & Data File Logs)
> Powervault 220 w/14 36GB 15K drives RAID 5 (Data Files & SQL System
> Logs)
> Windows Server 2003
> SQL 2000 Enterprise w/SP3
> Thanks,
> Chris
> --
> If responding via e-mail, place a period between my first and last name.|||It appears you application is very write-intensive. Consider placing data
files on RAID 10.
Hope this helps.
Dan Guzman
SQL Server MVP
"Chris Birk" <chrisbirk@.gmail.com> wrote in message
news:Xns961A7E02A1B16chrisbirkgmailcom@.2
07.46.248.16...
> Hi,
> We have a moderately sized (100GB) database which is running on a
> dedicated SQL Server. Our application is a mixture of OLTP and OLAP,
> and we've recently begun an effort to speed up the performance by
> cleaning up some poorly written queries, reconfiguring indexes, etc.
> One of the things we've noticed while running Performance Monitor is
> that when SQL Server issues a checkpoint (every 80 seconds or so during
> peak production times), the write queue on the disk array containing our
> data files goes from an average length of about 0.2 to about 100 and
> stays there for the duration of the checkpoint, typically about 15
> seconds or so. During this time queries which normally execute very
> quickly (50ms or so), will sometimes require a second or more to
> complete.
> We opened a case with Microsoft, and the first thing they had us do was
> to move our log files to a different disk array, but that didn't seem to
> have any effect. We still haven't moved the log files for tempdb,
> master, etc., but I wouldn't think those would matter nearly as much as
> the one for our datafile. Subsequent suggestions from them don't seem
> to have helped either.
> Is this normal behavior? Are we I/O bound and simply require a faster
> disk subsystem? Is there something in our hardware configuration which
> can/should be changed to help out? Are there any SQL configuration
> settings we could change to either reduce or eliminate the problem? Any
> suggestions would be greatly appreciated.
> Our server configuration is as follows:
> Dell 2650
> Dual 2.6GHz Xeon
> 2GB RAM
> (3) 73GB 10K drives RAID 5 (OS & Data File Logs)
> Powervault 220 w/14 36GB 15K drives RAID 5 (Data Files & SQL System
> Logs)
> Windows Server 2003
> SQL 2000 Enterprise w/SP3
> Thanks,
> Chris
> --
> If responding via e-mail, place a period between my first and last name.

Friday, March 9, 2012

Missing ReportViewer WebControl

Hello:
I'm trying to integrate reports with my .NET 1.1 application (using VS2003).
I've installed SQL Server Reporting Services 05 Standard Edition, yet I do
not see the ReportViewer control in the normal installation folder - in
fact, the only folder installed under Samples is Databases, containing the
sample tutorial databases.
Trying to patch the installation didnt obviously reveal where the file would
be installed from.
Any thoughts?
ThanksI just found this:
http://www.microsoft.com/downloads/details.aspx?familyid=8a166cac-758d-45c8-b637-dd7726e61367&displaylang=en
Which I *assume* contains my controls, but its not compatible with .NET 1.1.
So I'll rephrase my question :)
I have a .NET app with some forms that I'd like to provide direct links to
their Reporting Services counterparts in PDF format. I need to pass values
to the stored procedure parameters for each respective report, however. This
is the part I am unsure of.
I do not want the user to be prompted for values, because several of the
procedures contain values that the user will not know. Instead I was hoping
to pass these either within the report querystring, but I am not sure how to
do this. I thought the ReportViewer control would do the trick but it
appears it wont. I cannot convert the app to 2.0 because a significant
amount of time has already been invested in code and fixing compatibility
issues is not within our timeline.
Can anyone please provide me with a direction? Thank you.
"Elliot Rodriguez" <elliotrodriguezatgeemaildotcom> wrote in message
news:eZ5szc$YGHA.3936@.TK2MSFTNGP05.phx.gbl...
> Hello:
> I'm trying to integrate reports with my .NET 1.1 application (using
> VS2003).
> I've installed SQL Server Reporting Services 05 Standard Edition, yet I do
> not see the ReportViewer control in the normal installation folder - in
> fact, the only folder installed under Samples is Databases, containing the
> sample tutorial databases.
> Trying to patch the installation didnt obviously reveal where the file
> would be installed from.
> Any thoughts?
> Thanks
>|||You have two options. One is to use webservices. You get a stream back with
the format in PDF. You pass it all the parameters. The other option is to
use URL integration. You could embed the IE web control and give it the
appropriate URL. The URL string can specify rendering format as well as the
parameters.
Bruce Loehle-Conger
MVP SQL Server Reporting Services
"Elliot Rodriguez" <elliotrodriguezatgeemaildotcom> wrote in message
news:u2Nu8h$YGHA.3328@.TK2MSFTNGP02.phx.gbl...
>I just found this:
> http://www.microsoft.com/downloads/details.aspx?familyid=8a166cac-758d-45c8-b637-dd7726e61367&displaylang=en
> Which I *assume* contains my controls, but its not compatible with .NET
> 1.1.
> So I'll rephrase my question :)
> I have a .NET app with some forms that I'd like to provide direct links to
> their Reporting Services counterparts in PDF format. I need to pass values
> to the stored procedure parameters for each respective report, however.
> This is the part I am unsure of.
> I do not want the user to be prompted for values, because several of the
> procedures contain values that the user will not know. Instead I was
> hoping to pass these either within the report querystring, but I am not
> sure how to do this. I thought the ReportViewer control would do the trick
> but it appears it wont. I cannot convert the app to 2.0 because a
> significant amount of time has already been invested in code and fixing
> compatibility issues is not within our timeline.
> Can anyone please provide me with a direction? Thank you.
> "Elliot Rodriguez" <elliotrodriguezatgeemaildotcom> wrote in message
> news:eZ5szc$YGHA.3936@.TK2MSFTNGP05.phx.gbl...
>> Hello:
>> I'm trying to integrate reports with my .NET 1.1 application (using
>> VS2003).
>> I've installed SQL Server Reporting Services 05 Standard Edition, yet I
>> do not see the ReportViewer control in the normal installation folder -
>> in fact, the only folder installed under Samples is Databases, containing
>> the sample tutorial databases.
>> Trying to patch the installation didnt obviously reveal where the file
>> would be installed from.
>> Any thoughts?
>> Thanks
>>
>|||Thanks Bruce. Do you have any resources you can recommend for using the
Webservice option? I've found a lot on basic stuff but thats about it.
"Bruce L-C [MVP]" <bruce_lcNOSPAM@.hotmail.com> wrote in message
news:ubDgtn$YGHA.4760@.TK2MSFTNGP03.phx.gbl...
> You have two options. One is to use webservices. You get a stream back
> with the format in PDF. You pass it all the parameters. The other option
> is to use URL integration. You could embed the IE web control and give it
> the appropriate URL. The URL string can specify rendering format as well
> as the parameters.
>
> --
> Bruce Loehle-Conger
> MVP SQL Server Reporting Services
> "Elliot Rodriguez" <elliotrodriguezatgeemaildotcom> wrote in message
> news:u2Nu8h$YGHA.3328@.TK2MSFTNGP02.phx.gbl...
>>I just found this:
>> http://www.microsoft.com/downloads/details.aspx?familyid=8a166cac-758d-45c8-b637-dd7726e61367&displaylang=en
>> Which I *assume* contains my controls, but its not compatible with .NET
>> 1.1.
>> So I'll rephrase my question :)
>> I have a .NET app with some forms that I'd like to provide direct links
>> to their Reporting Services counterparts in PDF format. I need to pass
>> values to the stored procedure parameters for each respective report,
>> however. This is the part I am unsure of.
>> I do not want the user to be prompted for values, because several of the
>> procedures contain values that the user will not know. Instead I was
>> hoping to pass these either within the report querystring, but I am not
>> sure how to do this. I thought the ReportViewer control would do the
>> trick but it appears it wont. I cannot convert the app to 2.0 because a
>> significant amount of time has already been invested in code and fixing
>> compatibility issues is not within our timeline.
>> Can anyone please provide me with a direction? Thank you.
>> "Elliot Rodriguez" <elliotrodriguezatgeemaildotcom> wrote in message
>> news:eZ5szc$YGHA.3936@.TK2MSFTNGP05.phx.gbl...
>> Hello:
>> I'm trying to integrate reports with my .NET 1.1 application (using
>> VS2003).
>> I've installed SQL Server Reporting Services 05 Standard Edition, yet I
>> do not see the ReportViewer control in the normal installation folder -
>> in fact, the only folder installed under Samples is Databases,
>> containing the sample tutorial databases.
>> Trying to patch the installation didnt obviously reveal where the file
>> would be installed from.
>> Any thoughts?
>> Thanks
>>
>>
>

Saturday, February 25, 2012

missing notifications

Hello,

We are building a simple distributed application around the service broker where each queue is serviced from a windows service. We have a windows service running constantly as a "listener" on an event queue for each of what we call "request" queues. When a message is received by the request, the listener service instantiates a reader to process the request.

As we are in development, things get out of sync at times and the event queues sometimes stop getting the event notification message. I can correct this usually emptying the queues by receiving all messages from the "request" and "event" queues but sometimes it becomes necessary to drop and recreate the broker objects. Can someone tell me what are the fail points event_notification and what corrective actions are needed at these points?

For instance, if I see that a queue has a state of "Notified" in dm_broker_queue_monitors, I just do a receive to drain the appropriate queue. I have been unable to determine what state the service broker is in when I have to delete and recreate the event notification so I don't know what is causing it and how to programmatically determine when it is necessary to take this action. We would of course prefer not to get to this state but since it can happen during development, I would guess this can happen in production so I need to develop the recovery logic to detect and correct for this condition.

Jim

If you consume the notification message from the 'events' queue but you fail to launch the reader child thread/process to consume the messages from the the 'request' queue, it will end up exactly in the situation you described. Once a notification is sent, the queue monitor goes into 'Notified' state until a RECEIVE occurs on the queue that triggered the event. It does NOT continue to send notifications, otherwhise it could end up sending notifications for ever to a service that has stopped listening.

The most likely cause of the problem is that you are failing to launch the child thread/process when you receive the notification. See my reply on the previous thread ('5 times a charm' http://forums.microsoft.com/MSDN/ShowPost.aspx?PostID=202594&SiteID=1) for a sugestion on how to process messages when the processing involves some inherently unrelaible work (like launching a thread or a process).

Also, make sure to check the 'External Activator' sample at http://www.gotdotnet.com/codegallery/codegallery.aspx?id=9f7ae2af-31aa-44dd-9ee8-6b6b6d3d6319 , it does exactly what you want.

HTH,
~ Remus

|||

Hi Remus,

No, there is something else going on. When I get this condition, I manually do a receive in query analyzer until I clean out the "request" queue. When I have emptied the queue completely and then do a new send, the messages show up in the request queue but I get no notification event. If I drop and recreate the event notification, I will then see the event message on the next request message.

Jim

|||

Does any error show up in the notifications error queue [EventNotificationErrorsQueue]?

What is the state of the notification (it will be in sys.event_notifications) and od the dialog that carries the notification (it will be in sys.conversation_endpoints)?

HTH,
~ Remus

|||

Hi Remus,

I don't see a state in sys.event_notifications but all of the event notifications I created are listed there (6). As for the sys.conversation_endpoints, I do see some conversations in disconnected state but when we have our problem, I have a stored proc that goes through sys.conversation_endpoints and ends all these conversations with cleanup. Even with doing that, and all queues apparently empty I have had to recreate the event notificaiton.

I don't have a scenario to recreate this reliably so I just have to wait until we muck things up enough for it to happen and I am looking for what things I need to check. FYI, we are really using this as a monolog, the use pattern is begin dialog, send, end dialog. I have a periodic task that looks for missing task completions and just resends the request message if a task fails to complete.

Jim

|||

You need to investigate what are thos disconnected conversations. Are they initiator or targets? What 'far_service' do they have? What near service (service_id)? Are they system (is_system)? The state is 'DO' or 'DI'?

If you end the dialog that carries the notifications you are basically canceling the notification. Make sure you don't end the dialogs on the 'events' queue, that would cause the problem of having to drop and recreate the notification.

You definitely shouldn't need to have a periodic task that resends the message, that's the whole purpose of Service Broker, to avoit such problems.

One problem with the begin/send/end pattern is that you're missing any info if the message was delivered or not. In general, a better ppattern is to do begin/send and do the end on the initiator side as a response to the end from the target side.

HTH,
~ Remus

|||

Hi Remus,

No, I am not ending the dialog on the events queue, at least not directly or intentionally. Are there errors that would cause the dialog to end?

Yes, I realize that I could have used the service broker to monitor for task completion by keeping a conversation active and responding with a completion message. However, I would still need some other task responsible for deciding the task wasn't going to complete (service died, someone shut down that server, network unplugged etc) even though the message was successfully received, and generating a new request. I'm not looking for a message failure but a task failure in a service on any system connected to a Service Broker queue.

I'm relatively sure that the disconnected conversations are due us developers debugging our services and not allowing processing to complete. While debugging we are doing sends out of query analyzer manually, we are stopping and starting our code that reads the queues etc. The more we are learning, the more stable we are getting things.

So where can I find a list of things to work through when notifications stop coming? For example, I saw the state of one of my queues was NOTIFIED a couple of days ago and nothing I could do would get it back to INACTIVE. I tried clearing all conversations, made sure all of my queues were empty etc but I wound up having to drop and recreate the event notification.

Jim

PS - Aside from these little problems we are creating for ourselves, SSB is awesome!!

|||

Hi Jim,

I'm really glad you like SSB! I'm a big fan myself ;-)

Is not much I can do to help you in this case, w/o a repro case or a more precise description of the problem. Rushi might have some aditional ideas, he knows the activation machinery and queue monitors better than I do.

For your development environment, there is one big switch button that you can use:

ALTER DATABASE [dbname] SET DISABLE_BROKER;
ALTER DATABASE [dbname] SET ENABLE_BROKER;

This will basically reinitialize everything broker related in the database, including queue monitors and such. Of course, this is not a production solution, as it requires an exclusive lock on the database (no users connected).

As to investigate what's happening, try looking at these things for investigation:

- is the notification dialog still active? look in sys.event_notifications and in sys.conversation_endpoints
- is the notification message lingering on the sender's database? look in sys.transmission_queue
- check state of the notification dialog on the target side (the conversation_id is the same on both sides). Compare the send_sequence_number from the initiator with the receive_sequence_number from the target
- make sure that if the monitoring service has consumed a notification, it did launched a thread or a process that RECEIVED from that queue.

HTH,
~ Remus

|||

Jim Stallings wrote:

No, I am not ending the dialog on the events queue, at least not directly or intentionally. Are there errors that would cause the dialog to end?

I think this are all the conditions that could end the notification dialog from the target side:
- explicit END DIALOG, or END DIALOG .. WITH ERROR
- ALTER DATABASE [...] WITH ERROR_BROKER_CONVERSATIONS
- Sender service is denied SEND permission on the target service. Can only happen on the first message (so you won't get any notification at all)
- restore of target database to a point back in time when the target did not yet exist. At the next notification message sent the target will reply with an error that will end the dialog.
- END DIALOG ... WITH CLEANUP. It will wipe out the target w/o actually notfying the initiator, so the initiator will be errored out only next time it sends a notification message, same as above.

ALTER DATABASE [...] SET NEW_BROKER is a special case, it will wipe out the target w/o notifying the initiator, but since the broker is completely erased, the inittiator can never find again the old broker to deliver the message. If the initiator happens to be on the same database as the target then the initiator is wiped out as well, so there is no problem.

Just for the record, there are two more conditions that could end the dialog, but they cannot happen on notifications:
- sending an incorrectly formatted XML message, this cannot happen on notifications since notifications message bodies are outside your control
- dialog timeout, but notifications dialog have the maximum timeout, so it cannot happen until sometime in 2074.

HTH,
~ Remus

|||

Ending the dialog at the notification service: You could check the [EventNotificationsErrorQueue] to find error messages in case the dialog was closed due to some error. Also, you said that you have a stored proc that deliberately ends dialogs at the notification service; are you sure this is not being called somehow?

Programming pattern: Could you explain what the application is and why you are choosing the fire-and-forget (begin/send/end) pattern? I did not understand what you mean by 'task wasn't going to complete due to server shutdown, network unplugged, etc'. The reliable transport of service broker guarantees that messages will be delivered even if you run into such problems. The standard pattern we recommend is initiator begins dialog, sends the request and goes around with its own business (maybe accepting next request from user and doing begin/send). Sometime in the future, the message is delivered and a queue reader receives the message, processes it and sends back a response. If the intiator doesn't really need any excess information, the response could be as simple as ending the dialog. A background thread or a periodic program on the initiator side receives the end dialog response and ends the dialog on its side.

Task failures: If the request cannot be processed immediately, then we come across some interesting problems. A typical example is that the request generates an HttpRequest which could fail. You could rollback the transaction, but then you are going to get the message back almost immediately the next time you do a RECEIVE. If you rollback 5 times, your queue is going to get disabled. A common solution is that if the request cannot be processed immediately, you log it to a table and begin a conversation timer to retry the request after some X units of time.

My queue is stuck in NOTIFIED state: The NOTIFIED state indicates that we delivered that notification and now it's your job to perform a RECEIVE on the queue. A correctly written app will never orphan the queue in NOTIFIED state but always try to schedule something that will eventually come around and do that RECEIVE we've been waiting for. The RECEIVE moves the queue monitor state machine to the RECEIVES_OCCURING state. When the queue is drained and the last queue reader releases the conversation group lock (i.e. commits/rollsback a transaction doing the receive), we notice that there is nothing in the queue and take the queue monitor back to INACTIVE state. There is no way to reset the queue monitor from NOTIFIED to INACTIVE state. You can only reset from NOTIFIED to RECEIVES_OCCURING state. It's only when the queue is drained that we will go back to INACTIVE state.

INACTIVE is not EMPTY: INACTIVE does not really mean queue is empty. We could also go into INACTIVE state when all messages in the queue belong to conversation groups that are currently locked by some transaction or the other. In such a scenario, it doesn't make sense to activate a new queue reader since it will be unable to RECEIVE any messages. So INACTIVE is really the union of EMPTY and NO_UNLOCKED_MESSAGES state.

The external activator that we've released is a good example of how to write the kind of app you are trying to build. You should certainly take a look at that. We will be releasing an update to that shortly.

|||

Hi Rushi

This application uses a highly modified version of the ServiceBrokerInterface project from the activator example so yes, I have been through your examples many times including the PDC 2005.

As to what this project is, it is a print queue that gets kicked off by a periodic stored proc that examines a legacy database for new jobs. When a job is found, it is put into an active print table and two windows services receive a message to begin their processing. One does an httpRequest to an outside vendor the other creates a pdf from the data in the print table.

These may or may not be on the same server as other processes but definitely is not on the server running Service Broker. Yes I could have done a rollback/retry as you suggest but regardless, if we have a failure, we have to send this information to some controlling process to decide if it's a one time failure that should be retried, a single request that fails everytime due to bad data and should be logged or retried, whether we should send an alert to the users or sys admin etc, etc.

We also need to send the controlling process a success message when a task completes so that it can begin the next step, send to printer, archive files etc. I just elected to send completion messages directly to the controller process rather than using service broker conversation. Using a conversation, I would have to use activation for each initiator queue which would mean starting another service for each queue as I have built the application as I have my event listener windows service doing receive with WAITFOR so that they can check for shutdown and/or confguration changes between receives. Whether I use service broker conversations to encapsulate task completion or just fire and forget as you describe it, I still wind up with a controlling process listening to some queue.

With a more standard implementation as you suggest, my controller would listen to all task queues, in mine I have a dedicatcontroller queue that all the tasks report completion to. In any case, since I will have services running on multiple systems, I do need a timer thread running in my controller to see if a service has stopped processing a queue and take whatever actions are called for, alerts, redirect to another queue etc. That was it's primary function and I wanted the logic as to how to handle this not tied up in completing a conversation.

Thanks for the explanation on the queue state. When I was seeing this problem, it wasn't that the queue was inactive when I still had messages, it was that it was in Notified state and I couldn't receive from the notification queue. This can result from the developer stepping through the listener code and not completing the transaction but the lock should release either when he stopped and the connection terminated or when the command timed out so I'm at a loss as to what else to look at when this occurs.

Thanks

Jim

|||

There is a well-known race condition that can cause similar symptoms. The race occurs when the following conditions are met:

1) a given queue-reader is configured to a given max (e.g. 1)

2) there are currently max queue-readers running

3) a notification is delivered to the notification queue.

If these conditions occur while the queue reader(s) is still running, but in the process of shutting down it is quite likely that the notification queue will be drained, but the messages in the app queue will not be processed resulting in the app queue being in NOTIFIED state and the notification queue being in the RECEIVING state.

To deal with this the activating process should keep record of notifications received while the max queue readers condition is in effect and kick another off (just in case) when the # of queue readers falls below the max.

This is what the current version of our external activator sample does. (I'm not sure if this one is posted to the web yet or not).

I'm not sure if this condition is what you are seeing or not, but thought it worthy of calling out for both you and others reading this thread anyway.

-Gerald

|||

I believe that I have finally tracked down my problem. When I do an "end conversation with cleanup", my event notification gets dropped. I thought that since I still had an entry in sys.dm_broker_queue_monitors, that the event notification was active. I didn't see anything in the help for "end conversation" that led me to believe that the cleanup option should do this.

Thanks,

Jim

missing Microsoft.SqlServer.ManagedDTS

Hi

I am trying to run a SSIS package first time through vb.net console application. As the first step, i was trying to add the reference for Microsoft.SqlServer.ManagedDTS assembly but it was not in the available assemblies list box in visual studio 2003!

Please guide what i am supposed to do to get it, or if there any other alternative.

Thanks in advance

Utsav

In the Add Reference dialog window, click on the browse tab. Then navigate your way to:

C:\Program Files\Microsoft SQL Server\90\SDK\Assemblies

There you will find the Microsoft.SQLServer.ManagedDTS.dll, select it and hit okay...

|||ManagedDTS runs in process. If the console app is running on a machine that does not have SSIS loaded on it you will not be able to reference the dll. The application will also crash at the point that you attempt to access DTS objects. This also causes problems if you are executing packages that contain static paths. Because the package runs on the client machine, the paths will be assumed to be local. My solution to this was to create a web service that executes the packages on the server. Unfortunately, this aproach seems to be a huge chore, as I am having problems passing the credentials to the package app object. If anyone has any experience with this, some guidance would be greatly appreciated.|||See Michael Entin's recent post on this (http://blogs.msdn.com/michen/default.aspx).

missing Microsoft.SqlServer.ManagedDTS

Hi

I am trying to run a SSIS package first time through vb.net console application. As the first step, i was trying to add the reference for Microsoft.SqlServer.ManagedDTS assembly but it was not in the available assemblies list box in visual studio 2003!

Please guide what i am supposed to do to get it, or if there any other alternative.

Thanks in advance

Utsav

In the Add Reference dialog window, click on the browse tab. Then navigate your way to:

C:\Program Files\Microsoft SQL Server\90\SDK\Assemblies

There you will find the Microsoft.SQLServer.ManagedDTS.dll, select it and hit okay...

|||ManagedDTS runs in process. If the console app is running on a machine that does not have SSIS loaded on it you will not be able to reference the dll. The application will also crash at the point that you attempt to access DTS objects. This also causes problems if you are executing packages that contain static paths. Because the package runs on the client machine, the paths will be assumed to be local. My solution to this was to create a web service that executes the packages on the server. Unfortunately, this aproach seems to be a huge chore, as I am having problems passing the credentials to the package app object. If anyone has any experience with this, some guidance would be greatly appreciated.|||See Michael Entin's recent post on this (http://blogs.msdn.com/michen/default.aspx).

Missing Microsoft.ReportViewer.ProcessingObjectModel.dll

How can I get this dll so that I can copy it over to the hosting server?

I am using a third party to host a web application I can not run ReportViewer.exe to get the correct dlls installed.

I have tried to use CMD to copy the file Microsoft.ReportViewer.ProcessingObjectModel to the bin directory. This file does not have the .dll extension and it will not copy.

What else can I do?

Thanks,

enak

follow the following link:

http://drowningintechnicaldebt.com/blogs/dennisbottjer/archive/2006/10/16/Hacking-Report-Viewer-Redistributable.aspx

Your problem will be solved.

Monday, February 20, 2012

missing Enterprise Manager after installation of MSDE

My MSAccess application uses MSDE. For creating the setup, I use
InstallShield Developer 8, which installs the MSDE. Among the features for
MSDE, included in the redistributables is the Enterprise Manager.
But after executing the setup I cannot find the Enterprise Manager.
I think, I need the Enterprise Manager to connect to the Database to which
my Access application must be connected.
Or does there exist another method, to set up the connection?
Thank for help,
Rudolf
I didnt think MSDE came with Enterprise Manager at all. Including it in release files generated by InstallShield Developer presupposes that it comes with MSDE. Can someone confirm that it Enterprise Manager does come with MSDE (2000 Release A)?
Mark Ferguson
"Rudolf Hennemuth" wrote:

> My MSAccess application uses MSDE. For creating the setup, I use
> InstallShield Developer 8, which installs the MSDE. Among the features for
> MSDE, included in the redistributables is the Enterprise Manager.
> But after executing the setup I cannot find the Enterprise Manager.
> I think, I need the Enterprise Manager to connect to the Database to which
> my Access application must be connected.
> Or does there exist another method, to set up the connection?
> Thank for help,
> Rudolf
>
>
|||EM does *not* come with MSDE. You get a database without much interface.
jan
"Mark Ferguson" <MarkFerguson@.discussions.microsoft.com> wrote in message
news:C71FA1B3-2E82-4DF2-9DCB-D9278C18AA63@.microsoft.com...
> I didnt think MSDE came with Enterprise Manager at all. Including it in
release files generated by InstallShield Developer presupposes that it comes
with MSDE. Can someone confirm that it Enterprise Manager does come with
MSDE (2000 Release A)?[vbcol=seagreen]
> --
> Mark Ferguson
>
> "Rudolf Hennemuth" wrote:
for[vbcol=seagreen]
which[vbcol=seagreen]
|||hi,
"Jan Doggen" <j.doggen@.BLOCKqsa.nl> ha scritto nel messaggio
news:u%23sJmh6UEHA.2408@.tk2msftngp13.phx.gbl...
> EM does *not* come with MSDE. You get a database without much interface.
and in addition to Jan answer, including Enterprise Manager component and
related MMC snap-in dependencies in a personal deployment package violates
Microsoft EULA... at least the standard one
Andrea Montanari (Microsoft MVP - SQL Server)
http://www.asql.biz/DbaMgr.shtmhttp://italy.mvps.org
DbaMgr2k ver 0.8.0 - DbaMgr ver 0.54.0
(my vb6+sql-dmo little try to provide MS MSDE 1.0 and MSDE 2000 a visual
interface)
-- remove DMO to reply
|||Hello,
There is no Entreprise manager for MSDE (even if a SQL Manager from SQL2000
can work with MSDE). It is one of the differences between SQL Server and
MSDE (no graphical tool).
You can use SQL DMO to make a lot of things (create database, restore a
backup...)
Marc Allard
Allcomp
"Rudolf Hennemuth" <Rudolf.Hennemuth@.diese-gmbh.de> a crit dans le message
de news:ufwZBX4UEHA.2816@.TK2MSFTNGP11.phx.gbl...
> My MSAccess application uses MSDE. For creating the setup, I use
> InstallShield Developer 8, which installs the MSDE. Among the features for
> MSDE, included in the redistributables is the Enterprise Manager.
> But after executing the setup I cannot find the Enterprise Manager.
> I think, I need the Enterprise Manager to connect to the Database to which
> my Access application must be connected.
> Or does there exist another method, to set up the connection?
> Thank for help,
> Rudolf
>
|||There is another way...Microsoft freely distributes a SQl Server Web Data Administrator. See:
http://www.microsoft.com/downloads/d...displaylang=en
Mark Ferguson
"Rudolf Hennemuth" wrote:

> My MSAccess application uses MSDE. For creating the setup, I use
> InstallShield Developer 8, which installs the MSDE. Among the features for
> MSDE, included in the redistributables is the Enterprise Manager.
> But after executing the setup I cannot find the Enterprise Manager.
> I think, I need the Enterprise Manager to connect to the Database to which
> my Access application must be connected.
> Or does there exist another method, to set up the connection?
> Thank for help,
> Rudolf
>
>
|||Thanks,
this was the best hint, which solve my problem.
Rudolf
"Mark Ferguson" <MarkFerguson@.discussions.microsoft.com> schrieb im
Newsbeitrag news:20B68A31-4DA9-4281-AE16-40D8DCFFF9CE@.microsoft.com...
> There is another way...Microsoft freely distributes a SQl Server Web Data
Administrator. See:
>
http://www.microsoft.com/downloads/d...displaylang=en[vbcol=seagreen]
> --
> Mark Ferguson
>
> "Rudolf Hennemuth" wrote:
for[vbcol=seagreen]
which[vbcol=seagreen]