August 15, 2008
@ 12:08 AM
Evet! Bugün bir olay!!! yaşadık.Malum zat Istanbul'a geldi ve aşağıdaki manzaralar oluştu.


Haberleri izlediğimde bütün vatandaşlar şikayet ediyordu.Herkes;
- Böyle yönetim mi olur?
- Vatandaşlarını 3.sınıf vatandaş yerine koyan başka bir yönetim yoktur!!!
- Ankarayı ziyaret etmek istemeyen birisi için vatandaşı bu hale düşürüyorlar ya...
şeklinde konuşuyordu.

Bir tek kişi bile durumdan memnun değildi.Ama bir tek kişi bile...

E o kadar kişi yorum yaptı haberlerde...Bir yorum da benden...
Neden KIZIYORUZ? bu hale düşmeyi kendimiz SEÇMEDİK Mİ?

 
Categories: Genel

As i was just about to code a logging system for a project, i remembered a couple of fine methods which SqlConnection class has.
RetrieveStatistics();

It works with first enabling the stats mode, resetting the stats and when the command is executed, finally retrive the stats.
string strConnectionString = @"Data Source=.\SQLEXPRESS;Initial Catalog=FooDB;Integrated Security=True";
 using (SqlConnection conSQL = new SqlConnection(strConnectionString))
 {
     using (SqlCommand cmdSQL = new SqlCommand("select * from Foo", conSQL))
     {
         cmdSQL.CommandType = CommandType.Text;
         try
         {
             conSQL.Open();
             conSQL.StatisticsEnabled = true;
             
             conSQL.ResetStatistics();
             SqlDataReader drdActiveConfiguration = cmdSQL.ExecuteReader();
             IDictionary idcStat= conSQL.RetrieveStatistics();

             foreach (DictionaryEntry dceItem in idcStat)
             {
                 Console.WriteLine("Key: {0}, Value: {1}", dceItem.Key.ToString(), dceItem.Value.ToString());
             }

             DataSet dsActiveConfiguration = new DataSet();
             dsActiveConfiguration.Load(drdActiveConfiguration, LoadOption.OverwriteChanges, new string[] { "Foo1" });

             dsActiveConfiguration.Clear();
             conSQL.Close();
         }
         catch (Exception excp)
         {
         }
     }
 }
By using this method, you get a quite information about the execution process...

Key: NetworkServerTime, Value: 375
Key: BytesReceived, Value: 224
Key: UnpreparedExecs, Value: 1
Key: SumResultSets, Value: 0
Key: SelectCount, Value: 0
Key: PreparedExecs, Value: 0
Key: ConnectionTime, Value: 390
Key: ExecutionTime, Value: 390
Key: Prepares, Value: 0
Key: BuffersSent, Value: 1
Key: SelectRows, Value: 0
Key: ServerRoundtrips, Value: 1
Key: CursorOpens, Value: 0
Key: Transactions, Value: 0
Key: BytesSent, Value: 388
Key: BuffersReceived, Value: 1
Key: IduRows, Value: 0
Key: IduCount, Value: 0
Press any key to continue . . .


which is very handy :)


 
Categories: Software

August 12, 2008
@ 11:43 PM

To those users who has dloaded & installed Update 2 for their Esx 3.5 servers;
Due to an undefined date bug, vmware Esx 3.5 Update 2 servers will not power up VM's by today.
You can find specific info @ here

To solve this problem u need to change the time on Esx servers by typing below commands from service console.

service ntpd stop
date -s 20080811
vmware start
service ntpd start


This is not a total solution by all means, but since there is still no released bugfix for this problem(VmWare says there will be in 36 hrs), these commands will help to power up yr vm's.

 
Categories: Virtualization

Today i received a question about how to serialize an arraylist through xmlserialization.
Then i rapidly wrote a class named MyData which has 2 properties
public class MyData
{
public int a;
public string b;
public MyData()
{ }
public MyData(int _a, string _b)
{
a = _a;
b = _b;
}
}
Then generated some instances and added them to an arraylist in the main project.
class Program
{
static void Main(string[] args)
{
RunIt();
}
static void RunIt()
{
MyData v1 = new
MyData(0, "Zero");
MyData v2 = new MyData(1, "One");
MyData v3 = new MyData(2, "Two");

ArrayList al = new ArrayList();
al.Add(v1);
al.Add(v2);
al.Add(v3);

XmlSerializer s = new XmlSerializer(typeof(ArrayList));
string path = @"c:\seri.xml";
TextWriter tx = new StreamWriter(path, true);
s.Serialize(tx, al);
tx.Close();

FileStream fs = File.OpenRead(@"c:\seri.xml");
ArrayList ax = (ArrayList)s.Deserialize(fs);

Console.WriteLine(((
MyData)ax[0]).a.ToString());
Console.WriteLine(((
MyData)ax[1]).a.ToString());
Console.WriteLine(((
MyData)ax[2]).a.ToString());

}
}
When i ran the code i got the error, {"The type ConsoleApplication1.MyData was not expected. Use the XmlInclude or SoapInclude attribute to specify types that are not known statically."} which was the main question.

After some search i found out tht XmlSerializer was not aware of the type of MyData class and thus i got the above error.
To make XmlSerializer aware of a custom type, you should use one of it's constructer methods while u'r creating the object.
While creating XmlSerializer object i just added type type of my arraylist includes.
XmlSerializer s = new XmlSerializer(typeof(ArrayList),new Type[]{typeof(MyData)});
Ps: also i found out tht if u're developing this kind of code and having these type of errors, everytime u run the project make sure u delete the serialization file.Cause previous failed attemps may cause the right code to throw exceptions.


 
Categories: Software

Just minutes ago i tried to update my windows xp via ie windows update option.Unfortunately i got a message telling me tht some services (BITS Background intelligent transfer service, Eventlog and Automatic updates) is not running thus windows update is not available unless i start those services.

The interesting thing was all the services mentioned in error message was up & running, so i tried the old & dirty way & restarted windows :)
Believe me if restarting not solves your problem you got a problem.

Then i googled & found an interesting solution & it worked out very well

run "regsvr32.exe wuaueng.dll" command from cmd.

Question was how did wuaueng.dll unregistered?


 
Categories: Genel

2009 will be a kickn year for me.

I really must take some place in movie business.Cause every sunday i watch Avatar with my son and wonder why the hell they don't bring it to screen, then i saw the movie "Avatar" is set to be on screen by december,2009 while i was surfing imdb.



Beside there will be many s.f. movies, but i fall of the chair when i read about "Transformers 2 - the revenge of the fallen" will also take place in 2009.



 
Categories: Genel

Now i stare at space, thinking why did not i buy a backup ups?

I have 2 esx 3.5 running on sunx4600m2's & an emc san, what i wonderful life i used to say to myself.But those nice admin days gone with the blackout.Few days ago building automation manager called me and told there will be an operation on ups and informed me, so tht i can shutdown all systems to reduce data loss in case of some problems.I did what i had to do and shutdown all systems including backbone & network switches.

Operation finished, i got systems up and everything was working fine, another beautiful admin day...
Next day morning my systems engineer called me telling tht all systems are down.End of days...

When we figured out the reason of the problem we found out tht 1 day after the ups operation, a power blackout occured and all systems were reset.

So the list occured;
1-check esx's logs, search for an error or warning.
2-check san
3-check vm's

1- Unfortunately we found a lot of scsi io error lines @ logs.
2- San were fine (god bless emc it has ups inside, even if u pull the plug off it shutsdown clearly)
3- That's a big problem.Some vm's appeared as VM1 (invalid) and VM2 (obsolete)

To solve out problem 1, we tried fsck .All went fine.
To solve out problem 3; the worst day of my life.

First i tried to remove the vm's from inventory and then readd them by browsing vmfs volumes.It did not work.So then i connected directly to esx host using viclient, and tried the same but it all didn't work.

"vmware-cmd -l" service command listed 3 running vm's but when i ping other servers i was able to reach them.
then i ran "cat /proc/vmware/vm/*/names" to list the running vm's on esx using a different method, i saw 7 vm's were up & running.
The vm's were working but i could not reach them from viclient.

At this stage, the only option was to connect to each running vm by RDP and shutdown them.Create new vm and add the old vm's hdd to the new vm's.
i still did not figure out how things blowed up, but now i know tht the first item on my checklist is to buy a backup ups for esx's and san.

Beautiful admin days...:)


 
Categories: Virtualization

Oğlum ve ben süperkahraman koliğiz.Ben "Süperman"'ci oğlum ise "Spiderman" ci, tabi oğlum zaman zaman "Ironman","Mr Incredible","Transformers (Bumblebee)"'ye kayıyor onu da belirtmek lazım.Tabi durum böyle olunca bir baba olarak kostüm ve oyuncaklardan paçayı kurtaramıyorum.Kostum ve oyuncaklar bir yere kadar süperkahramanlık duygularımızı tatmin ediyor.Farklı ne yapabilirdik ki değil mi?


Hemen hemen bütün kahramanların ortak noktası uçmalarıdır.Bende dedim madem bahçeden bir örümcek yakalayıp oğluşu ısırtamayacağım ve "yalnızlık kalesi" tapusu benim olmayacak dedimki en azından uçalım...

Duygu muhteşemdi.Bir babalık görevini daha yerine getirmiş olmanın huzuru içindeyim :)


 
Categories: Genel