Search Results

Search found 17621 results on 705 pages for 'just my correct opinion'.

Page 36/705 | < Previous Page | 32 33 34 35 36 37 38 39 40 41 42 43  | Next Page >

  • Must I loop to search results for a specific value?

    - by tag
    I have a table in the database: name Opinion Tim Tim has an opinion John other random text Dan Dan's random text Al Al says something else I call this data and get it back in getRecords.lastResult To access John's opinion, I could use: getRecords.lastResult[1].opinion But that's only because I know that John is the second record (record 1), but this may change. So the right way is to search through the results to first find the record index for John, then access his opinion. My guess is I need some sort of a loop? Is there an easier way to search for John directly without a loop?

    Read the article

  • UITableViewCell imageView images loading small even when they are the correct size!

    - by Alex Barlow
    Im having an issue whilst loading images into a UITableViewCell after an asynchronous download and placement into an UIImage variable.. The images appear smaller than they actually are! But when scrolled down and scrolled back up to the image, or the whole table is reloaded, they appear at the correct size... Here is a code excerpt... - (void)reviewImageDidLoad:(NSIndexPath *)indexPath { ThumbDownloader *thumbDownloader = [imageDownloadsInProgress objectForKey:indexPath]; if (thumbDownloader != nil) { UITableViewCell *cell = [self.tableView cellForRowAtIndexPath:thumbDownloader.indexPathInTableView]; [UIView beginAnimations:nil context:nil]; [UIView setAnimationDuration:0.4]; [self.tableView cellForRowAtIndexPath:indexPath].imageView.alpha = 0.0; [UIView commitAnimations]; cell.imageView.image = thumbDownloader.review.thumb; [UIView beginAnimations:nil context:nil]; [UIView setAnimationDuration:0.4]; [self.tableView cellForRowAtIndexPath:indexPath].imageView.alpha = 1.0; [UIView commitAnimations]; } } Here is an image of the app just after calling this method.. http://www.flickr.com/photos/arbarlow/5288563627/ After calling tableView reloadData or scrolling around the appear correctly, go the the next flickr image, to see the normal result, but im sure you can guess that.. Does anyone have an ideas as to make the images appear correctly? im absolutely stumped?! Regards, Alex iPhone noob

    Read the article

  • What's the correct way to do a "catch all" error check on an fstream output operation?

    - by Truncheon
    What's the correct way to check for a general error when sending data to an fstream? UPDATE: My main concern regards some things I've been hearing about a delay between output and any data being physically written to the hard disk. My assumption was that the command "save_file_obj << save_str" would only send data to some kind of buffer and that the following check "if (save_file_obj.bad())" would not be any use in determining if there was an OS or hardware problem. I just wanted to know what was the definitive "catch all" way to send a string to a file and check to make certain that it was written to the disk, before carrying out any following actions such as closing the program. I have the following code... int Saver::output() { save_file_handle.open(file_name.c_str()); if (save_file_handle.is_open()) { save_file_handle << save_str.c_str(); if (save_file_handle.bad()) { x_message("Error - failed to save file"); return 0; } save_file_handle.close(); if (save_file_handle.bad()) { x_message("Error - failed to save file"); return 0; } return 1; } else { x_message("Error - couldn't open save file"); return 0; } }

    Read the article

  • Are these settings correct for sending mail through Rails/Gmail?

    - by aressidi
    Hi there, I spend a good deal of time building an email system for my Rails app that uses Gmail to send bulk mail to a list of opt-in users. I realize a shortcomming of using Google Apps for my mail, namely a rate limit on the number of emails it will send out (i believe 500). Anyway, I have reached out to my users to see how many have received the email, and a lot of them have not, though some have. The list I tried sending to was about 540 users, so I would have expected more "yes, got it," then "nope, still waiting" responses. I have two questions: Do these settings look correct for outgoing bulk mailing through Gmail? Again, using google apps to manage my domain and i know some people (including myself) have received the mailer. This is in a mail.rb initializer in my app. ActionMailer::Base.delivery_method = :sendmail ActionMailer::Base.smtp_settings = { :address => "smtp.gmail.com", :port => 25, :domain => "mydomain.com", :authentication => :login, :user_name => "[email protected]", :password => "mypass" } Is there any way I can test if the mail was delivered, or at least attempted to be delivered? I can't tell where in the list the mailer stops mailing! The way I generate the list is through a query which then passes the user info to a mailer worker which sends the emails out via Starling/Workling. Any advice here would be useful. Happy to post code, but want to make sure the method I'm using is sound. Thanks for the help!

    Read the article

  • Impossible to be const-correct when combining data and it's lock?

    - by Graeme
    I've been looking at ways to combine a piece of data which will be accessed by multiple threads alongside the lock provisioned for thread-safety. I think I've got to a point where I don't think its possible to do this whilst maintaining const-correctness. Take the following class for example: template <typename TType, typename TMutex> class basic_lockable_type { public: typedef TMutex lock_type; public: template <typename... TArgs> explicit basic_lockable_type(TArgs&&... args) : TType(std::forward<TArgs...>(args)...) {} TType& data() { return data_; } const TType& data() const { return data_; } void lock() { mutex_.lock(); } void unlock() { mutex_.unlock(); } private: TType data_; mutable TMutex mutex_; }; typedef basic_lockable_type<std::vector<int>, std::mutex> vector_with_lock; In this I try to combine the data and lock, marking mutex_ as mutable. Unfortunately this isn't enough as I see it because when used, vector_with_lock would have to be marked as mutable in order for a read operation to be performed from a const function which isn't entirely correct (data_ should be mutable from a const). void print_values() const { std::lock_guard<vector_with_lock>(values_); for(const int val : values_) { std::cout << val << std::endl; } } vector_with_lock values_; Can anyone see anyway around this such that const-correctness is maintained whilst combining data and lock? Also, have I made any incorrect assumptions here?

    Read the article

  • C# getpixels() gets the correct value on xp and vista but is slightly off when used on windows 7

    - by user352288
    I have a C# program that works correctly on xp and vista but it needs to be used on windows 7, I have not been able to come up with a solution, it appears that getpixels just doesn't work right on windows 7. I am getting one of the RGB values because I am dealing with tiff grayscale images. System.Drawing.Bitmap image;// this is in a separate class image = new Bitmap(destination);// this is in the constructor Color t = image.GetPixel(j, i); // this is in a separate function int s = t.R when I print s, for example, image(0,0), it is supposed to be 220, it will be 221 I am doing edge detection on an image and I have to go through the image pixel by pixel, I have run the exact same program on XP,Vista,windows7 and windows 7 got different values. It wouldn't let me post images at all and only one link. The first image is the original image, the second is the correct image, also the one I get with XP and Vista, the final image is the image when running the same program in Windows 7. There is not much of a visible difference but it matters for what I am doing. Thanks for the help, it seems that I am having a hard time explaining my problem.

    Read the article

  • What is the correct stage to use for Google Guice in production in an application server?

    - by Yishai
    It seems like a strange question (the obvious answer would Production, duh), but if you read the java docs: /** * We want fast startup times at the expense of runtime performance and some up front error * checking. */ DEVELOPMENT, /** * We want to catch errors as early as possible and take performance hits up front. */ PRODUCTION Assuming a scenario where you have a stateless call to an application server, the initial receiving method (or there abouts) creates the injector new every call. If there all of the module bindings are not needed in a given call, then it would seem to have been better to use the Development stage (which is the default) and not take the performance hit upfront, because you may never take it at all, and here the distinction between "upfront" and "runtime performance" is kind of moot, as it is one call. Of course the downside of this would appear to be that you would lose the error checking, causing potential code paths to cause a problem by surprise. So the question boils down to are the assumptions in the above correct? Will you save performance on a large set of modules when the given lifetime of an injector is one call?

    Read the article

  • Unable to Get a Correct Time when I am Calling serverTime using jquery.countdown.js + Asp.net ?

    - by user312891
    When i am calling the below function I unable to get a correct Answer. Both var Shortly and newTime having same time one coming from the client site other sync with server. http://keith-wood.name/countdown.html I am waiting from your response. Thanks $(function() { var shortly = new Date('April 9, 2010 20:38:10'); var newTime = new Date('April 9, 2010 20:38:10'); //for loop divid /// $('#defaultCountdown').countdown({ until: shortly, onExpiry: liftOff, onTick: watchCountdown, serverSync: serverTime }); $('#div1').countdown({ until: newTime }); }); function serverTime() { var time = null; $.ajax({ type: "POST", //Page Name (in which the method should be called) and method name url: "Default.aspx/GetTime", // If you want to pass parameter or data to server side function you can try line contentType: "application/json; charset=utf-8", dataType: "json", data: "{}", async: false, //else If you don't want to pass any value to server side function leave the data to blank line below //data: "{}", success: function(msg) { //Got the response from server and render to the client time = new Date(msg.d); alert(time); }, error: function(msg) { time = new Date(); alert('1'); } }); return time; }

    Read the article

  • How do you tell that your unit tests are correct?

    - by Jacob Adams
    I've only done minor unit testing at various points in my career. Whenever I start diving into it again, it always troubles me how to prove that my tests are correct. How can I tell that there isn't a bug in my unit test? Usually I end up running the app, proving it works, then using the unit test as a sort of regression test. What is the recommended approach and/or what is the approach you take to this problem? Edit: I also realize that you could write small, granular unit tests that would be easy to understand. However, if you assume that small, granular code is flawless and bulletproof, you could just write small, granular programs and not need unit testing. Edit2: For the arguments "unit testing is for making sure your changes don't break anything" and "this will only happen if the test has the exact same flaw as the code", what if the test overfits? It's possible to pass both good and bad code with a bad test. My main question is what good is unit testing since if your tests can be flawed you can't really improve your confidence in your code, can't really prove your refactoring worked, and can't really prove that you met the specification?

    Read the article

  • Which is the correct design pattern for my PHP application?

    - by user1487141
    I've been struggling to find good way to implement my system which essentially matches the season and episode number of a show from a string, you can see the current working code here: https://github.com/huddy/tvfilename I'm currently rewriting this library and want a nicer way to implement how the the match happens, currently essentially the way it works is: There's a folder with classes in it (called handlers), every handler is a class that implements an interface to ensure a method called match(); exists, this match method uses the regex stored in a property of that handler class (of which there are many) to try and match a season and episode. The class loads all of these handlers by instantiating each one into a array stored in a property, when I want to try and match some strings the method iterates over these objects calling match(); and the first one that returns true is then returned in a result set with the season and episode it matched. I don't really like this way of doing it, it's kind of hacky to me, and I'm hoping a design pattern can help, my ultimate goal is to do this using best practices and I wondered which one I should use? The other problems that exist are: More than one handler could match a string, so they have to be in an order to prevent the more greedy ones matching first, not sure if this is solvable as some of the regex patterns have to be greedy, but possibly a score system, something that shows a percentage of how likely the match is correct, i'd have no idea how to actually implement this though. I'm not if instantiating all those handlers is a good way of doing it, speed is important, but using best practices and sticking to design patterns to create good, extensible and maintainable code is my ultimate priority. It's worth noting the handler classes sometimes do other things than just regex matching, they sometimes prep the string to be matched by removing common words etc. Cheers for any help Billy

    Read the article

  • Errors not printing correctly..Is this logic flow correct? c++

    - by igor
    Example user input: PA1 9 //correct PJ1 9 //wrong, error printed "Invalid row" because it is not between A and I PA11 9 //wrong, error printer "Invalid column" because it is not between 1 and 9. The problem I am having is that it should clear the remaining input and then ask for the user to enter the "move" again, and it is not. Where did I go wrong? I've been at it for a while and still got no progress.. void clearInput() { cin.clear(); } bool getCoords(int & x, int & y) { char row; while(true){ cin>>row>>y; row=toupper(row); if(/*(id=='P' || id=='p' || id=='D' || id=='d') && */row>='A' && row<='I' && isalpha(row) && y>=1 && y<=9){ x=row-'A'; y=y-1; return true; } else if(!(y>=1 && y<=9)){ cout<<"Invalid column\n"<< endl << endl; cout<<y; clearInput(); cout<<y; //return false; } else{ cout<<"Invalid row\n"<< endl << endl; clearInput(); //cout<<x<<y; //return false; } } }

    Read the article

  • Beginner MVC question - Correct approach to render out a List and details?

    - by fizzer
    I'm trying to set up a page where I display a list of items and the details of the selected item. I have it working but wonder whether I have followed the correct approach. I'll use customers as an example I have set the aspx page to inherit from an IEnumerable of Customers. This seems to be the standard approach to display the list of items. For the Details I have added a Customer user control which inherits from customer. I think i'm on the right track so far but I was a bit confused as to where I should store the id of the customer whose details I intend to display. I wanted to make the id optional in the controller action so that the page could be hit using "/customers" or "customers/1" so I made the arg optional and stored the id in the ViewData like this: public ActionResult Customers(string id = "0") { Models.DBContext db = new Models.DBContext(); var cList = db.Customers.OrderByDescending(c => c.CustomerNumber); if (id == "0") { ViewData["CustomerNumber"] = cList.First().CustomerNumber.ToString(); } else { ViewData["CustomerNumber"] = id; } return View("Customers", cList); } I then rendered the User control using RenderPartial in the front end: <%var CustomerList = from x in Model where x.CustomerNumber == Convert.ToInt32(ViewData["CustomerNumber"]) select x; Customer c = (Customer)CustomerList.First(); %> <% Html.RenderPartial("Customer",c); %> Then I just have an actionLink on each listed item: <%: Html.ActionLink("Select", "Customers", new { id = item.CustomerNumber })% It all seems to work but as MVC is new to me I would just be interested in others thoughts on whether this is a good approach?

    Read the article

  • templated method on T inside a templated class on TT : Is that possible/correct.

    - by paercebal
    I have a class MyClass which is templated on typename T. But inside, I want a method which is templated on another type TT (which is unrelated to T). After reading/tinkering, I found the following notation: template <typename T> class MyClass { public : template<typename TT> void MyMethod(const TT & param) ; } ; For stylistic reasons (I like to have my templated class declaration in one header file, and the method definitions in another header file), I won't define the method inside the class declaration. So, I have to write it as: template <typename T> // this is the type of the class template <typename TT> // this is the type of the method void MyClass<T>::MyMethod(const TT & param) { // etc. } I knew I had to "declare" the typenames used in the method, but didn't know how exactly, and found through trials and errors. The code above compiles on Visual C++ 2008, but: Is this the correct way to have a method templated on TT inside a class templated on T? As a bonus: Are there hidden problems/surprises/constraints behind this kind of code? (I guess the specializations can be quite amusing to write)

    Read the article

  • CSS precedence order? My lecture slides are correct or not?

    - by Michael Mao
    Hi all: I've noticed that there are a couple of similar questions and answers at SO already, but let me clarify my specific question here first: I've got lecture slides which states like this: To be frank, I haven't heard of this rule of css precedence myself, and I googled to find something with similar topic but not quite like that : here To have a test myself, I've made a test page on my own server here After running it on FireFox 3.6.3, I am sure it does not show the way as it should be, according to the statement in lecture slides: imported stylesheet ? am I doing it wrong? I cannot see its effect using FireBug it says that embedded stylesheet has a higher precedence over linked/imported stylesheets, however, it doesn't work, if I put the linked/imported tag AFTER that. inline style vs html attributes ? I've got an image where I firstly set its inline style to control the width and height, then use direct html attributes width/height to try modifying that, but failed... Below is the source code : <html> <head> <style type="text/css"> #target { border : 2px solid green; color : green; } </style> <link rel="stylesheet" href="./linked.css" type="text/css" media="screen" /> </head> <body> <div id="target">A targeted div tag on page.</div> <img src="cat.jpg" alt="" style="width : 102px; height : 110px;" width="204px" height="220px" /> </body> </html> Can any experienced CSS guys help me figure out if the slide is correct or not? Frankly speaking, I am puzzled myself, as I can clearly see some other "incorrect" statements here and there amongst the slides, such as JavaScript is on client-side (how about server-side JavaScript?) and "Embedded styles are in the head section of a web page "(what the heck? I am not allowed to put it inside the body tag?) Sorry about this silly question, the exam is on TOMORROW, and I now see a lot of things to think about :)

    Read the article

  • which way is correct to retrive data from oracle??

    - by rima
    before answer me plz thinking about the futures of these kind of program and answer me plz. I wanna get some data from oracle server like: 1-get all the function,package,procedure and etc for showing them or drop them & etc... 2-compile my *.sql files,get the result if they have problem & etc... becuz I was beginner in oracle first of all I for solve the second problem I try to connect to sqlPlus by RUN sqlplus and trace the output(I mean,I change the output stream of shell and trace what happend and handle the assigned message to customer. NOW THIS PART SUCCEED. just a little bit I have problem with get all result because the output is asynchronous.any way... [in this case I log in to oracle Server by send argument to the sqlplus by make a process in c#] after that I try to get all function,package or procedure name,but I have problem in speed!so I try to use oracle.DataAccess.dll to connect the database. now I m so confusing about: which way is correct way to build a program that work like Oracle Developer! I do not have any experience for like these program how work. If Your answer is I must use the second way follow this part plz: I search a little bit the Golden,PLedit (Benthic software),I have little bit problem how I must create the connection string?because I thinking about how I can find the host name or port number that oracle work on them?? am I need read the TNSNames.Ora file? IF your answer is I must use the first way follow this part plz: do u have any Idea for how I parse the output?because for example the result of a table is so confusing...[i can handle & program it but I really need someone experience,because the important things to me learn how such software work so nice and with quick response?] All of the has different style in output... If you are not sure Can u help me which book can help me in this way i become expert? becuz for example all the C# write just about how u can connect to DB and the DB books write how u can use this DB program,I looking for a book that give me some Idea how develop an interface for do transaction between these two.not simple send and receive data,for example how write a compiler for them. the language of book is not different for me i know C#,java,VB,sql,Oracle Thanks.

    Read the article

  • Is this the correct way to build a Perl hash that utilizes arrays?

    - by Structure
    This is the first time I have manipulated hashes and arrays in this way -- and it is working. Basically, for every key there are multiple values that I want to record and then print out in the form "key -- value -- value -- val..." My code is as follows. I am surprised that it works, so concerned that it works "by mistake". Is this the correct way to accomplish this task, or is there a more efficient or appropriate method? while ($source =~ m/(regex)/g) { #Get all key names from source $listkey = $1; #Set current list key to the current regex result. $list{$listkey} = ++$i unless $list{$listkey}; #Add the key to the hash unless it already exists. $list{$listkey} = [] unless exists $list{$listkey}; #Add an array for the hash unless the hash already exists. while ($loopcount==0) { if ($ifcount==0) { $listvalue=result_of_some_function_using_list_key; #Get the first list value from the list key. $ifcount++; #Increment so we only get the first list value once. } else { $listvalue=result_of_some_function_using_list_value; #Update the last list value. } if ($listvalue) { #If the function returned a value... push @{$list{$listkey}}, $listvalue; #...then add the value to the hash array for the key. } else { #There are no more values and we need a new key. $listkey=0; #Reset variable. $domain=0; #Reset variable. $loopcount++; #Increment loop counter to exit loop. } } $ifcount=0; #Reset count variable so the next listvalue can be generated from the new key. $loopcount=0; #Reset count variable so another loop can begin for a new key. } foreach $listkey (keys %list) { #For each key in the hash. print "$listkey --> "; #Print the key. @values = @{$list{$listkey}}; #Reference the arrays of the hash. print join ' --> ', @values; #Print the values. print "\n"; #Print new line. }

    Read the article

  • Why will my AdRotator not display images? (Image paths are correct)

    - by KSwift87
    Hi. I'm writing a simple web application in C# and I've gotten to the part where I must add an AdRotator object and link four images to it. I have done this, but no matter what I do the images will not show up; only the alternate text. It makes no sense because the paths are correct. Supposedly AdRotator controls are really simple to use... But anyway below is my code. Search.aspx: <%@ Page Language="C#" MasterPageFile="~/Site.Master" AutoEventWireup="true" CodeBehind="Search.aspx.cs" Inherits="Module6.WebForm2" Title="Search" %> <asp:Content ID="Content1" ContentPlaceHolderID="head" runat="server"> </asp:Content> <asp:Content ID="Content2" ContentPlaceHolderID="ContentPlaceHolder1" runat="server"> <form id="Search" runat="server"> This is the Search page! <div class="StartCalendar"> <asp:Calendar ID="Calendar1" runat="server" Caption="Start Date" TodayDayStyle-Font-Bold="true" TodayDayStyle-ForeColor="Crimson" SelectedDayStyle-BackColor="DarkCyan" /> </div> <div class="EndCalendar"> <asp:Calendar ID="Calendar2" runat="server" Caption="End Date" TodayDayStyle-Font-Bold="true" TodayDayStyle-ForeColor="Crimson" SelectedDayStyle-BackColor="DarkCyan" /> </div> <br /><br /> <div class="Search"> <asp:Button ID="btnSearch" runat="server" Text="Search" UseSubmitBehavior="true" /> </div><br /><br /> <div class="CenterAd"> <asp:AdRotator ID="AdRotator1" runat="server" Target="_blank" AdvertisementFile="~/Advertisements.xml" /> </div> <br /><br /> <div class="Results"> <asp:GridView ID="gvResults" runat="server" /> </div> </form> </asp:Content> Advertisements.xml: <?xml version="1.0" encoding="utf-8" ?> <Advertisements> <Ad> <ImageURL>~/images/colts.jpg</ImageURL> <AlternateText>Colts Image</AlternateText> </Ad> <Ad> <ImageURL>~/images/conseco.gif</ImageURL> <AlternateText>Conseco Image</AlternateText> </Ad> <Ad> <ImageURL>~/images/IndianapolisIndians.png</ImageURL> <AlternateText>Indianapolis Indians Image</AlternateText> </Ad> <Ad> <ImageURL>~/images/pacers.gif</ImageURL> <AlternateText>Pacers Image</AlternateText> </Ad> </Advertisements> Any and all help is GREATLY appreciated.

    Read the article

  • How to add correct cancellation when downloading a file with the example in the samples of the new P

    - by Mike
    Hello everybody, I have downloaded the last samples of the Parallel Programming team, and I don't succeed in adding correctly the possibility to cancel the download of a file. Here is the code I ended to have: var wreq = (HttpWebRequest)WebRequest.Create(uri); // Fire start event DownloadStarted(this, new DownloadStartedEventArgs(remoteFilePath)); long totalBytes = 0; wreq.DownloadDataInFileAsync(tmpLocalFile, cancellationTokenSource.Token, allowResume, totalBytesAction => { totalBytes = totalBytesAction; }, readBytes => { Log.Debug("Progression : {0} / {1} => {2}%", readBytes, totalBytes, 100 * (double)readBytes / totalBytes); DownloadProgress(this, new DownloadProgressEventArgs(remoteFilePath, readBytes, totalBytes, (int)(100 * readBytes / totalBytes))); }) .ContinueWith( (antecedent ) => { if (antecedent.IsFaulted) Log.Debug(antecedent.Exception.Message); //Fire end event SetEndDownload(antecedent.IsCanceled, antecedent.Exception, tmpLocalFile, 0); }, cancellationTokenSource.Token); I want to fire an end event after the download is finished, hence the ContinueWith. I slightly changed the code of the samples to add the CancellationToken and the 2 delegates to get the size of the file to download, and the progression of the download: return webRequest.GetResponseAsync() .ContinueWith(response => { if (totalBytesAction != null) totalBytesAction(response.Result.ContentLength); response.Result.GetResponseStream().WriteAllBytesAsync(filePath, ct, resumeDownload, progressAction).Wait(ct); }, ct); I had to add the call to the Wait function, because if I don't, the method exits and the end event is fired too early. Here are the modified method extensions (lot of code, apologies :p) public static Task WriteAllBytesAsync(this Stream stream, string filePath, CancellationToken ct, bool resumeDownload = false, Action<long> progressAction = null) { if (stream == null) throw new ArgumentNullException("stream"); // Copy from the source stream to the memory stream and return the copied data return stream.CopyStreamToFileAsync(filePath, ct, resumeDownload, progressAction); } public static Task CopyStreamToFileAsync(this Stream source, string destinationPath, CancellationToken ct, bool resumeDownload = false, Action<long> progressAction = null) { if (source == null) throw new ArgumentNullException("source"); if (destinationPath == null) throw new ArgumentNullException("destinationPath"); // Open the output file for writing var destinationStream = FileAsync.OpenWrite(destinationPath); // Copy the source to the destination stream, then close the output file. return CopyStreamToStreamAsync(source, destinationStream, ct, progressAction).ContinueWith(t => { var e = t.Exception; destinationStream.Close(); if (e != null) throw e; }, ct, TaskContinuationOptions.ExecuteSynchronously, TaskScheduler.Current); } public static Task CopyStreamToStreamAsync(this Stream source, Stream destination, CancellationToken ct, Action<long> progressAction = null) { if (source == null) throw new ArgumentNullException("source"); if (destination == null) throw new ArgumentNullException("destination"); return Task.Factory.Iterate(CopyStreamIterator(source, destination, ct, progressAction)); } private static IEnumerable<Task> CopyStreamIterator(Stream input, Stream output, CancellationToken ct, Action<long> progressAction = null) { // Create two buffers. One will be used for the current read operation and one for the current // write operation. We'll continually swap back and forth between them. byte[][] buffers = new byte[2][] { new byte[BUFFER_SIZE], new byte[BUFFER_SIZE] }; int filledBufferNum = 0; Task writeTask = null; int readBytes = 0; // Until there's no more data to be read or cancellation while (true) { ct.ThrowIfCancellationRequested(); // Read from the input asynchronously var readTask = input.ReadAsync(buffers[filledBufferNum], 0, buffers[filledBufferNum].Length); // If we have no pending write operations, just yield until the read operation has // completed. If we have both a pending read and a pending write, yield until both the read // and the write have completed. yield return writeTask == null ? readTask : Task.Factory.ContinueWhenAll(new[] { readTask, writeTask }, tasks => tasks.PropagateExceptions()); // If no data was read, nothing more to do. if (readTask.Result <= 0) break; readBytes += readTask.Result; if (progressAction != null) progressAction(readBytes); // Otherwise, write the written data out to the file writeTask = output.WriteAsync(buffers[filledBufferNum], 0, readTask.Result); // Swap buffers filledBufferNum ^= 1; } } So basically, at the end of the chain of called methods, I let the CancellationToken throw an OperationCanceledException if a Cancel has been requested. What I hoped was to get IsFaulted == true in the appealing code and to fire the end event with the canceled flags and the correct exception. But what I get is an unhandled exception on the line response.Result.GetResponseStream().WriteAllBytesAsync(filePath, ct, resumeDownload, progressAction).Wait(ct); telling me that I don't catch an AggregateException. I've tried various things, but I don't succeed to make the whole thing work properly. Does anyone of you have played enough with that library and may help me? Thanks in advance Mike

    Read the article

  • I have a very long and repetitive python path, where do I look to correct this?

    - by ninja123
    I know it is probably not necessary to paste the whole path, but just for the record I have done so below. Whenever I run a python command, it takes a long time to load this path I suppose. I have checked in .bash_profile and only have these two lines: export PATH=/Users/username/bin:/opt/local/Library/Frameworks/Python.framework/Versions/2.5/bin:/opt/local/bin:/opt/local/sbin:/opt/local/apache2/bin:$PATH export PYTHONPATH=/opt/local/lib/python2.5/site-packages/ And my python path as outputed by Django's debug is: Python path : ['/Users/username/Sites/videocluster/eggs/ipython-0.10-py2.5.egg', '/Users/username/Sites/videocluster/eggs/South-0.6.1-py2.5.egg', '/Users/username/Sites/videocluster/eggs/django_markitup-0.5.2-py2.5.egg', '/Users/username/Sites/videocluster/eggs/DateTime-2.12.0-py2.5.egg', '/Users/username/Sites/videocluster/eggs/Markdown-2.0.3-py2.5.egg', '/Users/username/Sites/videocluster/eggs/PIL-1.1.7-py2.5-macosx-10.5-i386.egg', '/Users/username/Sites/videocluster/eggs/djangorecipe-0.20-py2.5.egg', '/Users/username/Sites/videocluster/eggs/zc.recipe.egg-1.2.3b2-py2.5.egg', '/Users/username/Sites/videocluster/eggs/zc.buildout-1.5.0b2-py2.5.egg', '/Users/username/Sites/videocluster/eggs/pytz-2010h-py2.5.egg', '/Users/username/Sites/videocluster/eggs/zope.interface-3.6.1-py2.5-macosx-10.5-i386.egg', '/Users/username/Sites/videocluster/eggs/setuptools-0.6c11-py2.5.egg', '/Users/username/Sites/videocluster/parts/django', '/Users/username/Sites/videocluster', '/Users/username/Sites/videocluster/bin', '/opt/local/lib/python2.5/site-packages/setuptools_git-0.3.3-py2.5.egg', '/opt/local/lib/python2.5/site-packages/pysqlite-2.5.5-py2.5-macosx-10.5-i386.egg', '/opt/local/lib/python2.5/site-packages/CouchDB-0.5-py2.5.egg', '/opt/local/lib/python2.5/site-packages/httplib2-0.4.0-py2.5.egg', '/opt/local/lib/python2.5/site-packages/PyYAML-3.08-py2.5-macosx-10.5-i386.egg', '/opt/local/lib/python2.5/site-packages/simple_db_migrate-1.2.8-py2.5.egg', '/opt/local/lib/python2.5/site-packages/PyDispatcher-2.0.1-py2.5.egg', '/opt/local/lib/python2.5/site-packages/pyOpenSSL-0.9-py2.5-macosx-10.5-i386.egg', '/opt/local/lib/python2.5/site-packages/greenlet-0.2-py2.5-macosx-10.5-i386.egg', '/opt/local/lib/python2.5/site-packages/Supay-0.0.2-py2.5.egg', '/opt/local/lib/python2.5/site-packages/configobj-4.6.0-py2.5.egg', '/opt/local/lib/python2.5/site-packages/Fabric-0.9b1-py2.5.egg', '/opt/local/lib/python2.5/site-packages/fudge-0.9.3-py2.5.egg', '/opt/local/lib/python2.5/site-packages/pydelicious-0.5.3-py2.5.egg', '/opt/local/lib/python2.5/site-packages/feedparser-4.1-py2.5.egg', '/opt/local/lib/python2.5/site-packages/github_cli-0.2.5.2-py2.5.egg', '/opt/local/lib/python2.5/site-packages/simplejson-2.0.9-py2.5-macosx-10.5-i386.egg', '/opt/local/lib/python2.5/site-packages/setuptools-0.6c11-py2.5.egg', '/opt/local/lib/python2.5/site-packages/setuptools-0.6c11-py2.5.egg', '/opt/local/lib/python2.5/site-packages/setuptools-0.6c11-py2.5.egg', '/opt/local/lib/python2.5/site-packages/setuptools-0.6c11-py2.5.egg', '/opt/local/lib/python2.5/site-packages/setuptools-0.6c11-py2.5.egg', '/opt/local/lib/python2.5/site-packages/setuptools-0.6c11-py2.5.egg', '/opt/local/lib/python2.5/site-packages/setuptools-0.6c11-py2.5.egg', '/opt/local/lib/python2.5/site-packages/setuptools-0.6c11-py2.5.egg', '/opt/local/lib/python2.5/site-packages/setuptools-0.6c11-py2.5.egg', '/opt/local/lib/python2.5/site-packages/setuptools-0.6c11-py2.5.egg', '/opt/local/lib/python2.5/site-packages/setuptools-0.6c11-py2.5.egg', '/opt/local/lib/python2.5/site-packages/setuptools-0.6c11-py2.5.egg', '/opt/local/lib/python2.5/site-packages/setuptools-0.6c11-py2.5.egg', '/opt/local/lib/python2.5/site-packages/setuptools-0.6c11-py2.5.egg', '/opt/local/lib/python2.5/site-packages/setuptools-0.6c11-py2.5.egg', '/opt/local/lib/python2.5/site-packages/setuptools-0.6c11-py2.5.egg', '/opt/local/lib/python2.5/site-packages/setuptools-0.6c11-py2.5.egg', '/opt/local/lib/python2.5/site-packages/setuptools-0.6c11-py2.5.egg', '/opt/local/lib/python2.5/site-packages/setuptools-0.6c11-py2.5.egg', ......(repeating)....... '/opt/local/lib/python2.5/site-packages/setuptools-0.6c11-py2.5.egg', '/opt/local/lib/python2.5/site-packages/setuptools-0.6c11-py2.5.egg', '/opt/local/lib/python2.5/site-packages/setuptools-0.6c11-py2.5.egg', '/opt/local/lib/python2.5/site-packages/setuptools-0.6c11-py2.5.egg', '/opt/local/lib/python2.5/site-packages/setuptools-0.6c11-py2.5.egg', '/opt/local/lib/python2.5/site-packages/setuptools-0.6c11-py2.5.egg', '/opt/local/lib/python2.5/site-packages/setuptools-0.6c11-py2.5.egg', '/opt/local/lib/python2.5/site-packages/setuptools-0.6c11-py2.5.egg', '/opt/local/lib/python2.5/site-packages/setuptools-0.6c11-py2.5.egg', '/opt/local/lib/python2.5/site-packages/setuptools-0.6c11-py2.5.egg', '/opt/local/lib/python2.5/site-packages/setuptools-0.6c11-py2.5.egg', '/opt/local/lib/python2.5/site-packages/setuptools-0.6c11-py2.5.egg', '/opt/local/lib/python2.5/site-packages/setuptools-0.6c11-py2.5.egg', '/opt/local/lib/python2.5/site-packages/setuptools-0.6c11-py2.5.egg', '/opt/local/lib/python2.5/site-packages/setuptools-0.6c11-py2.5.egg', '/opt/local/lib/python2.5/site-packages/setuptools-0.6c11-py2.5.egg', '/opt/local/lib/python2.5/site-packages/setuptools-0.6c11-py2.5.egg', '/opt/local/lib/python2.5/site-packages/setuptools-0.6c11-py2.5.egg', '/opt/local/lib/python2.5/site-packages/setuptools-0.6c11-py2.5.egg', '/opt/local/lib/python2.5/site-packages/setuptools-0.6c11-py2.5.egg', '/opt/local/lib/python2.5/site-packages/setuptools-0.6c11-py2.5.egg', '/opt/local/lib/python2.5/site-packages/setuptools-0.6c11-py2.5.egg', '/opt/local/lib/python2.5/site-packages/setuptools-0.6c11-py2.5.egg', '/opt/local/lib/python2.5/site-packages/setuptools-0.6c11-py2.5.egg', '/opt/local/lib/python2.5/site-packages/setuptools-0.6c11-py2.5.egg', '/opt/local/lib/python2.5/site-packages/setuptools-0.6c11-py2.5.egg', '/opt/local/lib/python2.5/site-packages/setuptools-0.6c11-py2.5.egg', '/opt/local/lib/python2.5/site-packages/setuptools-0.6c11-py2.5.egg', '/opt/local/lib/python2.5/site-packages/setuptools-0.6c11-py2.5.egg', '/opt/local/lib/python2.5/site-packages/setuptools-0.6c11-py2.5.egg', '/opt/local/lib/python2.5/site-packages/setuptools-0.6c11-py2.5.egg', '/opt/local/lib/python2.5/site-packages/setuptools-0.6c11-py2.5.egg', '/opt/local/lib/python2.5/site-packages/setuptools-0.6c11-py2.5.egg', '/opt/local/lib/python2.5/site-packages/setuptools-0.6c11-py2.5.egg', '/opt/local/lib/python2.5/site-packages/setuptools-0.6c11-py2.5.egg', '/opt/local/lib/python2.5/site-packages/setuptools-0.6c11-py2.5.egg', '/opt/local/lib/python2.5/site-packages/setuptools-0.6c11-py2.5.egg', '/opt/local/lib/python2.5/site-packages/setuptools-0.6c11-py2.5.egg', '/opt/local/lib/python2.5/site-packages/setuptools-0.6c11-py2.5.egg', '/opt/local/lib/python2.5/site-packages/setuptools-0.6c11-py2.5.egg', '/opt/local/lib/python2.5/site-packages/setuptools-0.6c11-py2.5.egg', '/opt/local/lib/python2.5/site-packages/setuptools-0.6c11-py2.5.egg', '/opt/local/lib/python2.5/site-packages/setuptools-0.6c11-py2.5.egg', '/opt/local/lib/python2.5/site-packages/setuptools-0.6c11-py2.5.egg', '/opt/local/lib/python2.5/site-packages/setuptools-0.6c11-py2.5.egg', '/opt/local/lib/python2.5/site-packages/setuptools-0.6c11-py2.5.egg', '/opt/local/lib/python2.5/site-packages/setuptools-0.6c11-py2.5.egg', '/opt/local/lib/python2.5/site-packages/setuptools-0.6c11-py2.5.egg', '/opt/local/lib/python2.5/site-packages/setuptools-0.6c11-py2.5.egg', '/opt/local/lib/python2.5/site-packages/setuptools-0.6c11-py2.5.egg', '/opt/local/lib/python2.5/site-packages/setuptools-0.6c11-py2.5.egg', '/opt/local/lib/python2.5/site-packages/setuptools-0.6c11-py2.5.egg', '/opt/local/lib/python2.5/site-packages/setuptools-0.6c11-py2.5.egg', '/opt/local/lib/python2.5/site-packages/setuptools-0.6c11-py2.5.egg', '/opt/local/lib/python2.5/site-packages/setuptools-0.6c11-py2.5.egg', '/opt/local/lib/python2.5/site-packages/setuptools-0.6c11-py2.5.egg', '/opt/local/lib/python2.5/site-packages/setuptools-0.6c11-py2.5.egg', '/opt/local/lib/python2.5/site-packages/setuptools-0.6c11-py2.5.egg', '/opt/local/lib/python2.5/site-packages/setuptools-0.6c11-py2.5.egg', '/opt/local/lib/python2.5/site-packages/setuptools-0.6c11-py2.5.egg', '/opt/local/lib/python2.5/site-packages/setuptools-0.6c11-py2.5.egg', '/opt/local/lib/python2.5/site-packages/setuptools-0.6c11-py2.5.egg', '/opt/local/lib/python2.5/site-packages/setuptools-0.6c11-py2.5.egg', '/opt/local/lib/python2.5/site-packages/setuptools-0.6c11-py2.5.egg', '/opt/local/lib/python2.5/site-packages/setuptools-0.6c11-py2.5.egg', '/opt/local/lib/python2.5/site-packages/setuptools-0.6c11-py2.5.egg', '/opt/local/lib/python2.5/site-packages/setuptools-0.6c11-py2.5.egg', '/opt/local/lib/python2.5/site-packages/setuptools-0.6c11-py2.5.egg', '/opt/local/lib/python2.5/site-packages/setuptools-0.6c11-py2.5.egg', '/opt/local/lib/python2.5/site-packages/setuptools-0.6c11-py2.5.egg', '/opt/local/lib/python2.5/site-packages/setuptools-0.6c11-py2.5.egg', '/opt/local/lib/python2.5/site-packages/setuptools-0.6c11-py2.5.egg', '/opt/local/lib/python2.5/site-packages/setuptools-0.6c11-py2.5.egg', '/opt/local/lib/python2.5/site-packages/setuptools-0.6c11-py2.5.egg', '/opt/local/lib/python2.5/site-packages/setuptools-0.6c11-py2.5.egg', '/opt/local/lib/python2.5/site-packages/setuptools-0.6c11-py2.5.egg', '/opt/local/lib/python2.5/site-packages/setuptools-0.6c11-py2.5.egg', '/opt/local/lib/python2.5/site-packages/setuptools-0.6c11-py2.5.egg', '/opt/local/lib/python2.5/site-packages/setuptools-0.6c11-py2.5.egg', '/opt/local/lib/python2.5/site-packages/setuptools-0.6c11-py2.5.egg', '/opt/local/lib/python2.5/site-packages/setuptools-0.6c11-py2.5.egg', '/opt/local/lib/python2.5/site-packages/setuptools-0.6c11-py2.5.egg', '/opt/local/lib/python2.5/site-packages/setuptools-0.6c11-py2.5.egg', '/opt/local/lib/python2.5/site-packages/harobed.paster_template.advanced_package-0.2-py2.5.egg', '/opt/local/lib/python2.5/site-packages/squash-0.5.0dev-py2.5.egg', '/opt/local/lib/python2.5/site-packages/eventlet-0.8.13-py2.5.egg', '/opt/local/lib/python2.5/site-packages/FeinCMS-1.0.2-py2.5.egg', '/opt/local/lib/python2.5/site-packages/pyenchant-1.5.3-py2.5.egg', '/opt/local/lib/python2.5/site-packages/guppy-0.1.9-py2.5-macosx-10.5-i386.egg', '/opt/local/lib/python2.5/site-packages/django_scraper-0.1dev-py2.5.egg', '/opt/local/lib/python2.5/site-packages/Pympler-0.1-py2.5.egg', '/opt/local/lib/python2.5/site-packages/fabric.contrib.packagemanager-0.1dev-py2.5.egg', '/opt/local/lib/python2.5/site-packages/zc.buildout-1.4.1-py2.5.egg', '/opt/local/lib/python2.5/site-packages/setuptools-0.6c11-py2.5.egg', '/opt/local/lib/python2.5/site-packages/selenium-1.0.1-py2.5.egg', '/opt/local/lib/python2.5/site-packages/Scrapy-0.9_dev-py2.5.egg', '/opt/local/lib/python2.5/site-packages/zc.buildout-1.4.1-py2.5.egg', '/opt/local/lib/python2.5/site-packages/setuptools-0.6c11-py2.5.egg', '/opt/local/lib/python2.5/site-packages/zc.buildout-1.4.1-py2.5.egg', '/opt/local/lib/python2.5/site-packages/setuptools-0.6c11-py2.5.egg', '/opt/local/lib/python2.5/site-packages/zc.buildout-1.4.1-py2.5.egg', '/opt/local/lib/python2.5/site-packages/setuptools-0.6c11-py2.5.egg', '/opt/local/lib/python2.5/site-packages/zc.buildout-1.4.1-py2.5.egg', ......(repeating)....... '/opt/local/lib/python2.5/site-packages/setuptools-0.6c11-py2.5.egg', '/opt/local/lib/python2.5/site-packages/zc.buildout-1.4.1-py2.5.egg', '/opt/local/lib/python2.5/site-packages/setuptools-0.6c11-py2.5.egg', '/opt/local/lib/python2.5/site-packages/zc.buildout-1.4.1-py2.5.egg', '/opt/local/lib/python2.5/site-packages/setuptools-0.6c11-py2.5.egg', '/opt/local/lib/python2.5/site-packages/zc.buildout-1.4.1-py2.5.egg', '/opt/local/lib/python2.5/site-packages/setuptools-0.6c11-py2.5.egg', '/opt/local/lib/python2.5/site-packages/zc.buildout-1.4.1-py2.5.egg', '/opt/local/lib/python2.5/site-packages/setuptools-0.6c11-py2.5.egg', '/opt/local/lib/python2.5/site-packages/zc.buildout-1.4.1-py2.5.egg', '/opt/local/lib/python2.5/site-packages/setuptools-0.6c11-py2.5.egg', '/opt/local/lib/python2.5/site-packages/zc.buildout-1.4.1-py2.5.egg', '/opt/local/lib/python2.5/site-packages/setuptools-0.6c11-py2.5.egg', '/opt/local/lib/python2.5/site-packages/zc.buildout-1.4.1-py2.5.egg', '/opt/local/lib/python2.5/site-packages/setuptools-0.6c11-py2.5.egg', '/opt/local/lib/python2.5/site-packages/zc.buildout-1.4.1-py2.5.egg', '/opt/local/lib/python2.5/site-packages/setuptools-0.6c11-py2.5.egg', '/opt/local/lib/python2.5/site-packages/zc.buildout-1.4.1-py2.5.egg', '/opt/local/lib/python2.5/site-packages/setuptools-0.6c11-py2.5.egg', '/opt/local/lib/python2.5/site-packages/zc.buildout-1.4.1-py2.5.egg', '/opt/local/lib/python2.5/site-packages/setuptools-0.6c11-py2.5.egg', '/opt/local/lib/python2.5/site-packages/zc.buildout-1.4.1-py2.5.egg', '/opt/local/lib/python2.5/site-packages/setuptools-0.6c11-py2.5.egg', '/opt/local/lib/python2.5/site-packages/zc.buildout-1.4.1-py2.5.egg', '/opt/local/lib/python2.5/site-packages/setuptools-0.6c11-py2.5.egg', '/opt/local/lib/python2.5/site-packages/zc.buildout-1.4.1-py2.5.egg', '/opt/local/lib/python2.5/site-packages/setuptools-0.6c11-py2.5.egg', '/opt/local/lib/python2.5/site-packages/zc.buildout-1.4.1-py2.5.egg', '/opt/local/lib/python2.5/site-packages/setuptools-0.6c11-py2.5.egg', '/opt/local/lib/python2.5/site-packages/zc.buildout-1.4.1-py2.5.egg', '/opt/local/lib/python2.5/site-packages/setuptools-0.6c11-py2.5.egg', '/opt/local/Library/Frameworks/Python.framework/Versions/2.5/lib/python2.5/site-packages/zc.buildout-1.4.1-py2.5.egg', '/opt/local/Library/Frameworks/Python.framework/Versions/2.5/lib/python2.5/site-packages/setuptools-0.6c11-py2.5.egg', '/opt/local/lib/python2.5/site-packages', '/opt/local/Library/Frameworks/Python.framework/Versions/2.5/lib/python25.zip', '/opt/local/Library/Frameworks/Python.framework/Versions/2.5/lib/python2.5', '/opt/local/Library/Frameworks/Python.framework/Versions/2.5/lib/python2.5/plat-darwin', '/opt/local/Library/Frameworks/Python.framework/Versions/2.5/lib/python2.5/plat-mac', '/opt/local/Library/Frameworks/Python.framework/Versions/2.5/lib/python2.5/plat-mac/lib-scriptpackages', '/opt/local/Library/Frameworks/Python.framework/Versions/2.5/lib/python2.5/lib-tk', '/opt/local/Library/Frameworks/Python.framework/Versions/2.5/lib/python2.5/lib-dynload', '/opt/local/Library/Frameworks/Python.framework/Versions/2.5/lib/python2.5/site-packages/Numeric', '/opt/local/Library/Frameworks/Python.framework/Versions/2.5/lib/python2.5/site-packages/PIL', '/opt/local/lib/python2.5/site-packages/PIL', '/opt/local/lib/python2.5/site-packages/gtk-2.0', '/opt/local/lib/python2.5/site-packages/gtk-2.0', '/opt/local/lib/python2.5/site-packages/gtk-2.0', '/opt/local/lib/python2.5/site-packages/gtk-2.0', '/opt/local/lib/python2.5/site-packages/gtk-2.0', '/opt/local/lib/python2.5/site-packages/gtk-2.0', '/opt/local/lib/python2.5/site-packages/gtk-2.0', '/opt/local/lib/python2.5/site-packages/gtk-2.0', '/opt/local/lib/python2.5/site-packages/gtk-2.0', '/opt/local/lib/python2.5/site-packages/gtk-2.0', '/opt/local/lib/python2.5/site-packages/gtk-2.0', '/opt/local/lib/python2.5/site-packages/gtk-2.0', '/opt/local/lib/python2.5/site-packages/gtk-2.0', '/opt/local/lib/python2.5/site-packages/gtk-2.0', '/opt/local/lib/python2.5/site-packages/gtk-2.0', '/opt/local/lib/python2.5/site-packages/gtk-2.0', '/opt/local/lib/python2.5/site-packages/gtk-2.0', '/opt/local/lib/python2.5/site-packages/gtk-2.0', '/opt/local/lib/python2.5/site-packages/gtk-2.0', '/opt/local/lib/python2.5/site-packages/gtk-2.0', '/opt/local/lib/python2.5/site-packages/gtk-2.0', '/opt/local/lib/python2.5/site-packages/gtk-2.0', '/opt/local/lib/python2.5/site-packages/gtk-2.0', '/opt/local/lib/python2.5/site-packages/gtk-2.0', '/opt/local/lib/python2.5/site-packages/gtk-2.0', '/opt/local/lib/python2.5/site-packages/gtk-2.0', '/opt/local/lib/python2.5/site-packages/gtk-2.0', '/opt/local/lib/python2.5/site-packages/gtk-2.0', '/opt/local/lib/python2.5/site-packages/gtk-2.0', '/opt/local/lib/python2.5/site-packages/gtk-2.0', '/opt/local/lib/python2.5/site-packages/gtk-2.0', '/opt/local/lib/python2.5/site-packages/gtk-2.0', '/opt/local/lib/python2.5/site-packages/gtk-2.0', '/opt/local/lib/python2.5/site-packages/gtk-2.0', '/opt/local/lib/python2.5/site-packages/gtk-2.0', ......(repeating)....... '/opt/local/lib/python2.5/site-packages/gtk-2.0', '/opt/local/lib/python2.5/site-packages/gtk-2.0', '/opt/local/lib/python2.5/site-packages/gtk-2.0', '/opt/local/lib/python2.5/site-packages/gtk-2.0', '/opt/local/lib/python2.5/site-packages/gtk-2.0', '/opt/local/lib/python2.5/site-packages/gtk-2.0', '/opt/local/lib/python2.5/site-packages/gtk-2.0', '/opt/local/Library/Frameworks/Python.framework/Versions/2.5/lib/python2.5/site-packages/gtk-2.0'] Someone, please tell me where I can go to correct this. Thanks

    Read the article

  • TCP packets larger than 4 KB don't get a reply from Linux

    - by pts
    I'm running Linux 3.2.51 in a virtual machine (192.168.33.15). I'm sending Ethernet frames to it. I'm writing custom software trying to emulate a TCP peer, the other peer is Linux running in the virtual machine guest. I've noticed that TCP packets larger than about 4 KB are ignored (i.e. dropped without an ACK) by the Linux guest. If I decrease the packet size by 50 bytes, I get an ACK. I'm not sending new payload data until the Linux guest fully ACKs the previous one. I've increased ifconfig eth0 mtu 51000, and ping -c 1 -s 50000 goes through (from guest to my emulator) and the Linux guest gets a reply of the same size. I've also increased sysctl -w net.ipv4.tcp_rmem='70000 87380 87380 and tried with sysctl -w net.ipv4.tcp_mtu_probing=1 (and also =0). There is no IPv3 packet fragmentation, all packets have the DF flag set. It works the other way round: the Linux guest can send TCP packets of 6900 bytes of payload and my emulator understands them. This is very strange to me, because only TCP packets seem to be affected (large ICMP packets go through). Any idea what can be imposing this limit? Any idea how to do debug it in the Linux kernel? See the tcpdump -n -vv output below. tcpdump was run on the Linux guest. The last line is interesting: 4060 bytes of TCP payload is sent to the guest, and it doesn't get any reply packet from the Linux guest for half a minute. 14:59:32.000057 IP (tos 0x0, ttl 64, id 0, offset 0, flags [DF], proto TCP (6), length 40) 192.168.33.1.36522 > 192.168.33.15.22: Flags [S], cksum 0x8da0 (correct), seq 10000000, win 14600, length 0 14:59:32.000086 IP (tos 0x10, ttl 64, id 0, offset 0, flags [DF], proto TCP (6), length 44) 192.168.33.15.22 > 192.168.33.1.36522: Flags [S.], cksum 0xc37f (incorrect -> 0x5999), seq 1415680476, ack 10000001, win 19920, options [mss 9960], length 0 14:59:32.000218 IP (tos 0x0, ttl 64, id 0, offset 0, flags [DF], proto TCP (6), length 40) 192.168.33.1.36522 > 192.168.33.15.22: Flags [.], cksum 0xa752 (correct), ack 1, win 14600, length 0 14:59:32.000948 IP (tos 0x10, ttl 64, id 53777, offset 0, flags [DF], proto TCP (6), length 66) 192.168.33.15.22 > 192.168.33.1.36522: Flags [P.], cksum 0xc395 (incorrect -> 0xfa01), seq 1:27, ack 1, win 19920, length 26 14:59:32.001575 IP (tos 0x0, ttl 64, id 0, offset 0, flags [DF], proto TCP (6), length 40) 192.168.33.1.36522 > 192.168.33.15.22: Flags [.], cksum 0xa738 (correct), ack 27, win 14600, length 0 14:59:32.001585 IP (tos 0x0, ttl 64, id 0, offset 0, flags [DF], proto TCP (6), length 65) 192.168.33.1.36522 > 192.168.33.15.22: Flags [P.], cksum 0x48d6 (correct), seq 1:26, ack 27, win 14600, length 25 14:59:32.001589 IP (tos 0x10, ttl 64, id 53778, offset 0, flags [DF], proto TCP (6), length 40) 192.168.33.15.22 > 192.168.33.1.36522: Flags [.], cksum 0xc37b (incorrect -> 0x9257), ack 26, win 19920, length 0 14:59:32.001680 IP (tos 0x10, ttl 64, id 53779, offset 0, flags [DF], proto TCP (6), length 496) 192.168.33.15.22 > 192.168.33.1.36522: Flags [P.], seq 27:483, ack 26, win 19920, length 456 14:59:32.001784 IP (tos 0x0, ttl 64, id 0, offset 0, flags [DF], proto TCP (6), length 40) 192.168.33.1.36522 > 192.168.33.15.22: Flags [.], cksum 0xa557 (correct), ack 483, win 14600, length 0 14:59:32.006367 IP (tos 0x0, ttl 64, id 0, offset 0, flags [DF], proto TCP (6), length 1136) 192.168.33.1.36522 > 192.168.33.15.22: Flags [P.], seq 26:1122, ack 483, win 14600, length 1096 14:59:32.044150 IP (tos 0x10, ttl 64, id 53780, offset 0, flags [DF], proto TCP (6), length 40) 192.168.33.15.22 > 192.168.33.1.36522: Flags [.], cksum 0xc37b (incorrect -> 0x8c47), ack 1122, win 19920, length 0 14:59:32.045310 IP (tos 0x0, ttl 64, id 0, offset 0, flags [DF], proto TCP (6), length 312) 192.168.33.1.36522 > 192.168.33.15.22: Flags [P.], seq 1122:1394, ack 483, win 14600, length 272 14:59:32.045322 IP (tos 0x10, ttl 64, id 53781, offset 0, flags [DF], proto TCP (6), length 40) 192.168.33.15.22 > 192.168.33.1.36522: Flags [.], cksum 0xc37b (incorrect -> 0x8b37), ack 1394, win 19920, length 0 14:59:32.925726 IP (tos 0x10, ttl 64, id 53782, offset 0, flags [DF], proto TCP (6), length 1112) 192.168.33.15.22 > 192.168.33.1.36522: Flags [.], seq 483:1555, ack 1394, win 19920, length 1072 14:59:32.925750 IP (tos 0x10, ttl 64, id 53784, offset 0, flags [DF], proto TCP (6), length 312) 192.168.33.15.22 > 192.168.33.1.36522: Flags [P.], seq 1555:1827, ack 1394, win 19920, length 272 14:59:32.927131 IP (tos 0x0, ttl 64, id 0, offset 0, flags [DF], proto TCP (6), length 40) 192.168.33.1.36522 > 192.168.33.15.22: Flags [.], cksum 0x9bcf (correct), ack 1555, win 14600, length 0 14:59:32.927148 IP (tos 0x0, ttl 64, id 0, offset 0, flags [DF], proto TCP (6), length 40) 192.168.33.1.36522 > 192.168.33.15.22: Flags [.], cksum 0x9abf (correct), ack 1827, win 14600, length 0 14:59:32.932248 IP (tos 0x10, ttl 64, id 53785, offset 0, flags [DF], proto TCP (6), length 56) 192.168.33.15.22 > 192.168.33.1.36522: Flags [P.], cksum 0xc38b (incorrect -> 0xd247), seq 1827:1843, ack 1394, win 19920, length 16 14:59:32.932366 IP (tos 0x0, ttl 64, id 0, offset 0, flags [DF], proto TCP (6), length 40) 192.168.33.1.36522 > 192.168.33.15.22: Flags [.], cksum 0x9aaf (correct), ack 1843, win 14600, length 0 14:59:32.964295 IP (tos 0x0, ttl 64, id 0, offset 0, flags [DF], proto TCP (6), length 104) 192.168.33.1.36522 > 192.168.33.15.22: Flags [P.], seq 1394:1458, ack 1843, win 14600, length 64 14:59:32.964310 IP (tos 0x10, ttl 64, id 53786, offset 0, flags [DF], proto TCP (6), length 40) 192.168.33.15.22 > 192.168.33.1.36522: Flags [.], cksum 0xc37b (incorrect -> 0x85a7), ack 1458, win 19920, length 0 14:59:32.964561 IP (tos 0x10, ttl 64, id 53787, offset 0, flags [DF], proto TCP (6), length 88) 192.168.33.15.22 > 192.168.33.1.36522: Flags [P.], seq 1843:1891, ack 1458, win 19920, length 48 14:59:32.965185 IP (tos 0x0, ttl 64, id 0, offset 0, flags [DF], proto TCP (6), length 40) 192.168.33.1.36522 > 192.168.33.15.22: Flags [.], cksum 0x9a3f (correct), ack 1891, win 14600, length 0 14:59:32.965196 IP (tos 0x0, ttl 64, id 0, offset 0, flags [DF], proto TCP (6), length 104) 192.168.33.1.36522 > 192.168.33.15.22: Flags [P.], seq 1458:1522, ack 1891, win 14600, length 64 14:59:32.965233 IP (tos 0x10, ttl 64, id 53788, offset 0, flags [DF], proto TCP (6), length 88) 192.168.33.15.22 > 192.168.33.1.36522: Flags [P.], seq 1891:1939, ack 1522, win 19920, length 48 14:59:32.965970 IP (tos 0x0, ttl 64, id 0, offset 0, flags [DF], proto TCP (6), length 40) 192.168.33.1.36522 > 192.168.33.15.22: Flags [.], cksum 0x99cf (correct), ack 1939, win 14600, length 0 14:59:32.965979 IP (tos 0x0, ttl 64, id 0, offset 0, flags [DF], proto TCP (6), length 568) 192.168.33.1.36522 > 192.168.33.15.22: Flags [P.], seq 1522:2050, ack 1939, win 14600, length 528 14:59:32.966112 IP (tos 0x10, ttl 64, id 53789, offset 0, flags [DF], proto TCP (6), length 520) 192.168.33.15.22 > 192.168.33.1.36522: Flags [P.], seq 1939:2419, ack 2050, win 19920, length 480 14:59:32.970059 IP (tos 0x0, ttl 64, id 0, offset 0, flags [DF], proto TCP (6), length 40) 192.168.33.1.36522 > 192.168.33.15.22: Flags [.], cksum 0x95df (correct), ack 2419, win 14600, length 0 14:59:32.970089 IP (tos 0x0, ttl 64, id 0, offset 0, flags [DF], proto TCP (6), length 616) 192.168.33.1.36522 > 192.168.33.15.22: Flags [P.], seq 2050:2626, ack 2419, win 14600, length 576 14:59:32.981159 IP (tos 0x10, ttl 64, id 53790, offset 0, flags [DF], proto TCP (6), length 72) 192.168.33.15.22 > 192.168.33.1.36522: Flags [P.], cksum 0xc39b (incorrect -> 0xa84f), seq 2419:2451, ack 2626, win 19920, length 32 14:59:32.982347 IP (tos 0x0, ttl 64, id 0, offset 0, flags [DF], proto TCP (6), length 40) 192.168.33.1.36522 > 192.168.33.15.22: Flags [.], cksum 0x937f (correct), ack 2451, win 14600, length 0 14:59:32.982357 IP (tos 0x0, ttl 64, id 0, offset 0, flags [DF], proto TCP (6), length 104) 192.168.33.1.36522 > 192.168.33.15.22: Flags [P.], seq 2626:2690, ack 2451, win 14600, length 64 14:59:32.982401 IP (tos 0x10, ttl 64, id 53791, offset 0, flags [DF], proto TCP (6), length 88) 192.168.33.15.22 > 192.168.33.1.36522: Flags [P.], seq 2451:2499, ack 2690, win 19920, length 48 14:59:32.982570 IP (tos 0x0, ttl 64, id 0, offset 0, flags [DF], proto TCP (6), length 40) 192.168.33.1.36522 > 192.168.33.15.22: Flags [.], cksum 0x930f (correct), ack 2499, win 14600, length 0 14:59:32.982702 IP (tos 0x0, ttl 64, id 0, offset 0, flags [DF], proto TCP (6), length 104) 192.168.33.1.36522 > 192.168.33.15.22: Flags [P.], seq 2690:2754, ack 2499, win 14600, length 64 14:59:33.020066 IP (tos 0x10, ttl 64, id 53792, offset 0, flags [DF], proto TCP (6), length 40) 192.168.33.15.22 > 192.168.33.1.36522: Flags [.], cksum 0xc37b (incorrect -> 0x7e07), ack 2754, win 19920, length 0 14:59:33.983503 IP (tos 0x10, ttl 64, id 53793, offset 0, flags [DF], proto TCP (6), length 72) 192.168.33.15.22 > 192.168.33.1.36522: Flags [P.], cksum 0xc39b (incorrect -> 0x2aa7), seq 2499:2531, ack 2754, win 19920, length 32 14:59:33.983810 IP (tos 0x10, ttl 64, id 53794, offset 0, flags [DF], proto TCP (6), length 88) 192.168.33.15.22 > 192.168.33.1.36522: Flags [P.], seq 2531:2579, ack 2754, win 19920, length 48 14:59:33.984100 IP (tos 0x0, ttl 64, id 0, offset 0, flags [DF], proto TCP (6), length 40) 192.168.33.1.36522 > 192.168.33.15.22: Flags [.], cksum 0x92af (correct), ack 2531, win 14600, length 0 14:59:33.984139 IP (tos 0x0, ttl 64, id 0, offset 0, flags [DF], proto TCP (6), length 40) 192.168.33.1.36522 > 192.168.33.15.22: Flags [.], cksum 0x927f (correct), ack 2579, win 14600, length 0 14:59:34.022914 IP (tos 0x0, ttl 64, id 0, offset 0, flags [DF], proto TCP (6), length 104) 192.168.33.1.36522 > 192.168.33.15.22: Flags [P.], seq 2754:2818, ack 2579, win 14600, length 64 14:59:34.022939 IP (tos 0x10, ttl 64, id 53795, offset 0, flags [DF], proto TCP (6), length 40) 192.168.33.15.22 > 192.168.33.1.36522: Flags [.], cksum 0xc37b (incorrect -> 0x7d77), ack 2818, win 19920, length 0 14:59:34.023554 IP (tos 0x10, ttl 64, id 53796, offset 0, flags [DF], proto TCP (6), length 88) 192.168.33.15.22 > 192.168.33.1.36522: Flags [P.], seq 2579:2627, ack 2818, win 19920, length 48 14:59:34.027571 IP (tos 0x0, ttl 64, id 0, offset 0, flags [DF], proto TCP (6), length 40) 192.168.33.1.36522 > 192.168.33.15.22: Flags [.], cksum 0x920f (correct), ack 2627, win 14600, length 0 14:59:34.027603 IP (tos 0x0, ttl 64, id 0, offset 0, flags [DF], proto TCP (6), length 4100) 192.168.33.1.36522 > 192.168.33.15.22: Flags [P.], seq 2818:6878, ack 2627, win 14600, length 4060

    Read the article

  • Can using higher rated battery damage device?

    - by Anwar Shah
    I am in need of a battery for my Lenovo 3000 Y410 Laptop. It's installed battery has voltage rating of 10.8v. But the shop i've consulted has only a battery of 11.1v rating. Should I buy the battery? I mean, Does using that battery can damage my laptop? An answer with some good source from hardware vendor will be very much helpful. Please do not just put your opinion. Because I do not see any difference in your opinion and my opinion. My opinion is also "It is bad". But I need some reliable source.

    Read the article

  • What's the correct way to POST a compressed JSON string with RestSharp?

    - by Steve Dunn
    I want to use RestSharp to POST something somewhere. I'm posting straight JSON (and not POCOs). Because I'm posting plain JSON, I believe I need to use this workaround instead of setting Body: request.AddParameter( "application/json", myJsonString, ParameterType.RequestBody); This works fine when I'm not compressing the JSON. When I do, using this: request.Headers.Add("Content-Encoding", "gzip"); request.AddParameter( "application/json", GZipStream.CompressString(myJsonString), ParameterType.RequestBody); This doesn't work. I stepped through the code and in RestClient::ConfigureHttp, I see: http.RequestBody = body.Value.ToString(); Since I'm giving at a byte array, body.Value is set to System.Byte[] Is there a way for RestSharp to handle a gzipped json string in a POST request?

    Read the article

  • Android SDK Manager and AVD Manager doesn't have the correct information and fails to update on Ubun

    - by Johan Carlsson
    I'm trying to install Android SDK on Ubuntu but fail when I try to use the SDK Manager and AVD Manager to install Android platforms. I've downloaded: android-sdk_r04-linux_86.tgz The I start the SDK Manager and AVD Manager (UI) according to the README file: ./tools/android And I get the following Installed Packages: - Install SDK Tools, revision 4 Available Packages: - https://dl-ssl.google.com/android/repoisotry/repository.xml - This repository requires a more recent version of the Tools. Please update- - Android SDK Tools, revision 4 - Archive for Linux (comment: funny since rev 4 seems to be what's installed this is what seems to be installed) Now doing an update of the Android SDK Tools, revision 4 or everything results in 99% progress and then the application hangs. Here's the console feedback: johanc@johan-desktop:~/android/android-sdk-linux_86$ tools/android Starting Android SDK and AVD Manager No command line parameters provided, launching UI. See 'android --help' for operations from the command line. Error: null In the app I choose to upgate the following package: Package Description Android SDK Tools, revision 4 Archive Description Archive for Linux Size: 15 MiB SHA1: 99380c9330c1c3728c836206947350cc00fa28c2 Site https://dl-ssl.google.com/android/repository/repository.xml The console output reads (and the app hangs at 99%): Exception in thread "Installing Archives" java.lang.AssertionError at com.android.sdkuilib.internal.tasks.ProgressTask.incProgress(ProgressTask.java:97) at com.android.sdkuilib.internal.repository.UpdaterData$2.run(UpdaterData.java:358) at com.android.sdkuilib.internal.tasks.ProgressTask$1.run(ProgressTask.java:135)

    Read the article

  • WCF, Metadata and BIGIP - Can I force the correct url for the WSDL items?

    - by Yossi Dahan
    We have a WCF service hosted on ServerA which is a server with no-direct Internet access and has a non-Internet routable IP address. The service is fronted by BIGIP which handles SSL encryption and decryption and forwards the unencrypted request to ServerA (at the moment it does NOT actually do any load balancing, but that is likely to be added in the future) on a specific port. What that means is that our clients would be calling the service through https://www.OurDomain.com/ServiceUrl and would get to our service on http://SeverA:85/ServiceUrl through the BIGIP device; When we browse to the WSDL published on https://www.OurDomain.com/ServiceUrl all the addresses contained in the WSDL are based on the http://SeverA:85/ServiceUrl base address We figured out that we could use the host headers setting to set the domain, but our problem is that while this would sort out the domain, we would still be using the wrong scheme – it would use http://www.OurDomain.com/ServiceUrl while we need it to be Https. Also – as we have other services (asmx based) hosted on that server we had some issues setting the host headers, and so we thought we could get away with creating another site on the server (using, say, port 82) and set the host header on that; now, on top of the http/https problem we have an issue as the WSDL contains the port number in all the urls, where BigIP works on port 443 (for the SSL) Is there a more flexible solution than implementing Host Headers? Ideally we need to retain flexibility and ease of supportability. Thanks for any help…

    Read the article

  • Is it correct to say that an ASP .NET MVC application is an HTTPModule?

    - by stormwild
    I just wanted to clarify my understanding of ASP .NET MVC (current version is 4). I was reading this article on How does ASP.NET MVC work? So, how does ASP.NET know how to route requests to MVC? The answer lies in web.config. There is a new http module added to modules collection in ASP.NET MVC projects So basically an mvc application is implemented as an HTTPModule or at least the url routing portion of an mvc app? Would it be possible for one to create and register a custom routing module and then possibly create their own micro mvc framework like Sinatra in Ruby or Slim in PHP?

    Read the article

< Previous Page | 32 33 34 35 36 37 38 39 40 41 42 43  | Next Page >